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.
- checksums.yaml +7 -0
- data/.clang-format +75 -0
- data/.clangd +2 -0
- data/.github/dependabot.yml +24 -0
- data/.github/workflows/bundle-update.yml +63 -0
- data/.github/workflows/c-check.yml +61 -0
- data/.github/workflows/comments.yml +37 -0
- data/.github/workflows/dependabot.yml +30 -0
- data/.github/workflows/jruby.yml +67 -0
- data/.github/workflows/milestone.yml +83 -0
- data/.github/workflows/ruby.yml +158 -0
- data/.github/workflows/rust.yml +184 -0
- data/.github/workflows/truffleruby.yml +54 -0
- data/.github/workflows/typecheck.yml +39 -0
- data/.github/workflows/wasm.yml +53 -0
- data/.github/workflows/windows.yml +49 -0
- data/.gitignore +38 -0
- data/.rubocop.yml +72 -0
- data/BSDL +22 -0
- data/CHANGELOG.md +2292 -0
- data/COPYING +56 -0
- data/README.md +240 -0
- data/Rakefile +869 -0
- data/Steepfile +53 -0
- data/config.yml +913 -0
- data/core/array.rbs +4142 -0
- data/core/basic_object.rbs +376 -0
- data/core/binding.rbs +148 -0
- data/core/builtin.rbs +278 -0
- data/core/class.rbs +223 -0
- data/core/comparable.rbs +192 -0
- data/core/complex.rbs +812 -0
- data/core/constants.rbs +96 -0
- data/core/data.rbs +415 -0
- data/core/dir.rbs +993 -0
- data/core/encoding.rbs +1368 -0
- data/core/enumerable.rbs +2506 -0
- data/core/enumerator/arithmetic_sequence.rbs +70 -0
- data/core/enumerator/product.rbs +92 -0
- data/core/enumerator.rbs +705 -0
- data/core/env.rbs +6 -0
- data/core/errno.rbs +682 -0
- data/core/errors.rbs +789 -0
- data/core/exception.rbs +485 -0
- data/core/false_class.rbs +82 -0
- data/core/fiber.rbs +570 -0
- data/core/fiber_error.rbs +11 -0
- data/core/file.rbs +2045 -0
- data/core/file_constants.rbs +463 -0
- data/core/file_stat.rbs +534 -0
- data/core/file_test.rbs +331 -0
- data/core/float.rbs +1316 -0
- data/core/gc.rbs +788 -0
- data/core/global_variables.rbs +184 -0
- data/core/hash.rbs +2183 -0
- data/core/integer.rbs +1374 -0
- data/core/io/buffer.rbs +995 -0
- data/core/io/wait.rbs +48 -0
- data/core/io.rbs +3472 -0
- data/core/kernel.rbs +3172 -0
- data/core/marshal.rbs +207 -0
- data/core/match_data.rbs +637 -0
- data/core/math.rbs +770 -0
- data/core/method.rbs +422 -0
- data/core/module.rbs +1856 -0
- data/core/nil_class.rbs +210 -0
- data/core/numeric.rbs +832 -0
- data/core/object.rbs +108 -0
- data/core/object_space/weak_key_map.rbs +166 -0
- data/core/object_space.rbs +197 -0
- data/core/pathname.rbs +1322 -0
- data/core/proc.rbs +905 -0
- data/core/process.rbs +2316 -0
- data/core/ractor.rbs +924 -0
- data/core/random.rbs +255 -0
- data/core/range.rbs +1209 -0
- data/core/rational.rbs +502 -0
- data/core/rb_config.rbs +88 -0
- data/core/rbs/ops.rbs +154 -0
- data/core/rbs/unnamed/argf.rbs +1236 -0
- data/core/rbs/unnamed/env_class.rbs +1214 -0
- data/core/rbs/unnamed/main_class.rbs +123 -0
- data/core/rbs/unnamed/random.rbs +186 -0
- data/core/refinement.rbs +59 -0
- data/core/regexp.rbs +1974 -0
- data/core/ruby.rbs +53 -0
- data/core/ruby_vm.rbs +809 -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 +109 -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 +1105 -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 +293 -0
- data/core/set.rbs +751 -0
- data/core/signal.rbs +110 -0
- data/core/string.rbs +5532 -0
- data/core/struct.rbs +668 -0
- data/core/symbol.rbs +482 -0
- data/core/thread.rbs +1826 -0
- data/core/thread_group.rbs +79 -0
- data/core/time.rbs +1793 -0
- data/core/trace_point.rbs +483 -0
- data/core/true_class.rbs +98 -0
- data/core/unbound_method.rbs +337 -0
- data/core/warning.rbs +87 -0
- data/docs/CONTRIBUTING.md +107 -0
- data/docs/aliases.md +79 -0
- data/docs/architecture.md +110 -0
- data/docs/collection.md +192 -0
- data/docs/config.md +171 -0
- data/docs/data_and_struct.md +86 -0
- data/docs/encoding.md +56 -0
- data/docs/gem.md +56 -0
- data/docs/inline.md +634 -0
- data/docs/rbs_by_example.md +309 -0
- data/docs/repo.md +125 -0
- data/docs/rust.md +96 -0
- data/docs/sigs.md +167 -0
- data/docs/stdlib.md +147 -0
- data/docs/syntax.md +940 -0
- data/docs/tools.md +17 -0
- data/docs/type_fingerprint.md +21 -0
- data/docs/wasm_serialization.md +80 -0
- data/exe/rbs +7 -0
- data/ext/rbs_extension/ast_translation.c +1855 -0
- data/ext/rbs_extension/ast_translation.h +41 -0
- data/ext/rbs_extension/class_constants.c +187 -0
- data/ext/rbs_extension/class_constants.h +104 -0
- data/ext/rbs_extension/compat.h +10 -0
- data/ext/rbs_extension/extconf.rb +40 -0
- data/ext/rbs_extension/legacy_location.c +294 -0
- data/ext/rbs_extension/legacy_location.h +82 -0
- data/ext/rbs_extension/main.c +613 -0
- data/ext/rbs_extension/rbs_extension.h +16 -0
- data/ext/rbs_extension/rbs_string_bridging.c +9 -0
- data/ext/rbs_extension/rbs_string_bridging.h +24 -0
- data/goodcheck.yml +91 -0
- data/include/rbs/ast.h +1047 -0
- data/include/rbs/defines.h +99 -0
- data/include/rbs/lexer.h +207 -0
- data/include/rbs/location.h +40 -0
- data/include/rbs/parser.h +153 -0
- data/include/rbs/serialize.h +39 -0
- data/include/rbs/string.h +47 -0
- data/include/rbs/util/rbs_allocator.h +59 -0
- data/include/rbs/util/rbs_assert.h +20 -0
- data/include/rbs/util/rbs_buffer.h +83 -0
- data/include/rbs/util/rbs_constant_pool.h +155 -0
- data/include/rbs/util/rbs_encoding.h +282 -0
- data/include/rbs/util/rbs_unescape.h +24 -0
- data/include/rbs.h +14 -0
- data/lib/rbs/ancestor_graph.rb +92 -0
- data/lib/rbs/annotate/annotations.rb +199 -0
- data/lib/rbs/annotate/formatter.rb +82 -0
- data/lib/rbs/annotate/rdoc_annotator.rb +398 -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 +472 -0
- data/lib/rbs/ast/directives.rb +49 -0
- data/lib/rbs/ast/members.rb +451 -0
- data/lib/rbs/ast/ruby/annotations.rb +451 -0
- data/lib/rbs/ast/ruby/comment_block.rb +247 -0
- data/lib/rbs/ast/ruby/declarations.rb +291 -0
- data/lib/rbs/ast/ruby/helpers/constant_helper.rb +28 -0
- data/lib/rbs/ast/ruby/helpers/location_helper.rb +15 -0
- data/lib/rbs/ast/ruby/members.rb +762 -0
- data/lib/rbs/ast/type_param.rb +235 -0
- data/lib/rbs/ast/visitor.rb +137 -0
- data/lib/rbs/buffer.rb +189 -0
- data/lib/rbs/builtin_names.rb +58 -0
- data/lib/rbs/cli/colored_io.rb +48 -0
- data/lib/rbs/cli/diff.rb +84 -0
- data/lib/rbs/cli/validate.rb +294 -0
- data/lib/rbs/cli.rb +1253 -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 +269 -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 +265 -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 +415 -0
- data/lib/rbs/definition_builder/ancestor_builder.rb +678 -0
- data/lib/rbs/definition_builder/method_builder.rb +295 -0
- data/lib/rbs/definition_builder.rb +1054 -0
- data/lib/rbs/diff.rb +131 -0
- data/lib/rbs/environment/class_entry.rb +69 -0
- data/lib/rbs/environment/module_entry.rb +66 -0
- data/lib/rbs/environment/use_map.rb +77 -0
- data/lib/rbs/environment.rb +1028 -0
- data/lib/rbs/environment_loader.rb +167 -0
- data/lib/rbs/environment_walker.rb +155 -0
- data/lib/rbs/errors.rb +634 -0
- data/lib/rbs/factory.rb +18 -0
- data/lib/rbs/file_finder.rb +28 -0
- data/lib/rbs/inline_parser/comment_association.rb +117 -0
- data/lib/rbs/inline_parser.rb +568 -0
- data/lib/rbs/location_aux.rb +170 -0
- data/lib/rbs/locator.rb +247 -0
- data/lib/rbs/method_type.rb +145 -0
- data/lib/rbs/namespace.rb +154 -0
- data/lib/rbs/parser/lex_result.rb +15 -0
- data/lib/rbs/parser/token.rb +23 -0
- data/lib/rbs/parser_aux.rb +142 -0
- data/lib/rbs/prototype/helpers.rb +197 -0
- data/lib/rbs/prototype/node_usage.rb +99 -0
- data/lib/rbs/prototype/rb.rb +816 -0
- data/lib/rbs/prototype/rbi.rb +625 -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 +680 -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 +167 -0
- data/lib/rbs/rewriter.rb +70 -0
- data/lib/rbs/sorter.rb +198 -0
- data/lib/rbs/source.rb +99 -0
- data/lib/rbs/substitution.rb +83 -0
- data/lib/rbs/subtractor.rb +204 -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 +457 -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 +122 -0
- data/lib/rbs/types.rb +1604 -0
- data/lib/rbs/unit_test/convertibles.rb +177 -0
- data/lib/rbs/unit_test/spy.rb +138 -0
- data/lib/rbs/unit_test/type_assertions.rb +383 -0
- data/lib/rbs/unit_test/with_aliases.rb +145 -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/wasm/deserializer.rb +213 -0
- data/lib/rbs/wasm/jars/asm-analysis.jar +0 -0
- data/lib/rbs/wasm/jars/asm-commons.jar +0 -0
- data/lib/rbs/wasm/jars/asm-tree.jar +0 -0
- data/lib/rbs/wasm/jars/asm-util.jar +0 -0
- data/lib/rbs/wasm/jars/asm.jar +0 -0
- data/lib/rbs/wasm/jars/compiler.jar +0 -0
- data/lib/rbs/wasm/jars/log.jar +0 -0
- data/lib/rbs/wasm/jars/runtime.jar +0 -0
- data/lib/rbs/wasm/jars/wasi.jar +0 -0
- data/lib/rbs/wasm/jars/wasm.jar +0 -0
- data/lib/rbs/wasm/location.rb +61 -0
- data/lib/rbs/wasm/parser.rb +137 -0
- data/lib/rbs/wasm/rbs_parser.wasm +0 -0
- data/lib/rbs/wasm/runtime.rb +217 -0
- data/lib/rbs/wasm/serialization_schema.rb +110 -0
- data/lib/rbs/writer.rb +424 -0
- data/lib/rbs.rb +117 -0
- data/lib/rdoc/discover.rb +20 -0
- data/lib/rdoc_plugin/parser.rb +163 -0
- data/rbs.gemspec +68 -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 +52 -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 +85 -0
- data/sig/annotate/rdoc_source.rbs +32 -0
- data/sig/annotation.rbs +27 -0
- data/sig/ast/ruby/annotations.rbs +470 -0
- data/sig/ast/ruby/comment_block.rbs +127 -0
- data/sig/ast/ruby/declarations.rbs +158 -0
- data/sig/ast/ruby/helpers/constant_helper.rbs +11 -0
- data/sig/ast/ruby/helpers/location_helper.rbs +15 -0
- data/sig/ast/ruby/members.rbs +198 -0
- data/sig/buffer.rbs +108 -0
- data/sig/builtin_names.rbs +44 -0
- data/sig/cli/colored_io.rbs +15 -0
- data/sig/cli/diff.rbs +15 -0
- data/sig/cli/validate.rbs +47 -0
- data/sig/cli.rbs +89 -0
- data/sig/collection/cleaner.rbs +13 -0
- data/sig/collection/config/lockfile.rbs +74 -0
- data/sig/collection/config/lockfile_generator.rbs +68 -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 +274 -0
- data/sig/definition.rbs +232 -0
- data/sig/definition_builder.rbs +181 -0
- data/sig/diff.rbs +28 -0
- data/sig/directives.rbs +77 -0
- data/sig/environment/class_entry.rbs +50 -0
- data/sig/environment/module_entry.rbs +50 -0
- data/sig/environment.rbs +286 -0
- data/sig/environment_loader.rbs +111 -0
- data/sig/environment_walker.rbs +65 -0
- data/sig/errors.rbs +408 -0
- data/sig/factory.rbs +5 -0
- data/sig/file_finder.rbs +28 -0
- data/sig/inline_parser/comment_association.rbs +71 -0
- data/sig/inline_parser.rbs +126 -0
- data/sig/location.rbs +135 -0
- data/sig/locator.rbs +56 -0
- data/sig/manifest.yaml +5 -0
- data/sig/members.rbs +258 -0
- data/sig/method_builder.rbs +89 -0
- data/sig/method_types.rbs +58 -0
- data/sig/namespace.rbs +161 -0
- data/sig/parser.rbs +164 -0
- data/sig/prototype/helpers.rbs +29 -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 +61 -0
- data/sig/rewriter.rbs +45 -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/source.rbs +48 -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 +115 -0
- data/sig/typename.rbs +89 -0
- data/sig/types.rbs +578 -0
- data/sig/unit_test/convertibles.rbs +154 -0
- data/sig/unit_test/spy.rbs +22 -0
- data/sig/unit_test/type_assertions.rbs +211 -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/wasm/deserializer.rbs +66 -0
- data/sig/wasm/serialization_schema.rbs +13 -0
- data/sig/writer.rbs +127 -0
- data/src/ast.c +1628 -0
- data/src/lexer.c +3217 -0
- data/src/lexer.re +155 -0
- data/src/lexstate.c +217 -0
- data/src/location.c +31 -0
- data/src/parser.c +4255 -0
- data/src/serialize.c +958 -0
- data/src/string.c +41 -0
- data/src/util/rbs_allocator.c +162 -0
- data/src/util/rbs_assert.c +19 -0
- data/src/util/rbs_buffer.c +54 -0
- data/src/util/rbs_constant_pool.c +268 -0
- data/src/util/rbs_encoding.c +21308 -0
- data/src/util/rbs_unescape.c +167 -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 +1647 -0
- data/stdlib/bigdecimal-math/0/big_math.rbs +280 -0
- data/stdlib/bigdecimal-math/0/manifest.yaml +2 -0
- data/stdlib/cgi/0/core.rbs +911 -0
- data/stdlib/cgi/0/manifest.yaml +4 -0
- data/stdlib/cgi-escape/0/escape.rbs +171 -0
- data/stdlib/coverage/0/coverage.rbs +266 -0
- data/stdlib/csv/0/csv.rbs +3776 -0
- data/stdlib/csv/0/manifest.yaml +3 -0
- data/stdlib/date/0/date.rbs +1598 -0
- data/stdlib/date/0/date_time.rbs +617 -0
- data/stdlib/date/0/time.rbs +26 -0
- data/stdlib/dbm/0/dbm.rbs +421 -0
- data/stdlib/delegate/0/delegator.rbs +187 -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 +344 -0
- data/stdlib/digest/0/digest.rbs +687 -0
- data/stdlib/erb/0/erb.rbs +933 -0
- data/stdlib/etc/0/etc.rbs +884 -0
- data/stdlib/fileutils/0/fileutils.rbs +1753 -0
- data/stdlib/find/0/find.rbs +49 -0
- data/stdlib/forwardable/0/forwardable.rbs +271 -0
- data/stdlib/io-console/0/io-console.rbs +414 -0
- data/stdlib/ipaddr/0/ipaddr.rbs +436 -0
- data/stdlib/json/0/json.rbs +1963 -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 +5580 -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 +470 -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 +433 -0
- data/stdlib/open3/0/open3.rbs +606 -0
- data/stdlib/openssl/0/manifest.yaml +3 -0
- data/stdlib/openssl/0/openssl.rbs +12231 -0
- data/stdlib/optparse/0/optparse.rbs +1734 -0
- data/stdlib/pathname/0/pathname.rbs +36 -0
- data/stdlib/pp/0/manifest.yaml +2 -0
- data/stdlib/pp/0/pp.rbs +301 -0
- data/stdlib/prettyprint/0/prettyprint.rbs +383 -0
- data/stdlib/pstore/0/pstore.rbs +608 -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 +455 -0
- data/stdlib/psych/0/store.rbs +57 -0
- data/stdlib/pty/0/pty.rbs +240 -0
- data/stdlib/random-formatter/0/random-formatter.rbs +277 -0
- data/stdlib/rdoc/0/code_object.rbs +52 -0
- data/stdlib/rdoc/0/comment.rbs +61 -0
- data/stdlib/rdoc/0/context.rbs +153 -0
- data/stdlib/rdoc/0/markup.rbs +117 -0
- data/stdlib/rdoc/0/options.rbs +76 -0
- data/stdlib/rdoc/0/parser.rbs +56 -0
- data/stdlib/rdoc/0/rdoc.rbs +393 -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 +1787 -0
- data/stdlib/ripper/0/ripper.rbs +1654 -0
- data/stdlib/securerandom/0/manifest.yaml +2 -0
- data/stdlib/securerandom/0/securerandom.rbs +49 -0
- data/stdlib/shellwords/0/shellwords.rbs +229 -0
- data/stdlib/singleton/0/singleton.rbs +134 -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 +94 -0
- data/stdlib/socket/0/socket.rbs +4170 -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 +87 -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 +1681 -0
- data/stdlib/strscan/0/string_scanner.rbs +1648 -0
- data/stdlib/tempfile/0/tempfile.rbs +483 -0
- data/stdlib/time/0/time.rbs +434 -0
- data/stdlib/timeout/0/timeout.rbs +137 -0
- data/stdlib/tmpdir/0/tmpdir.rbs +69 -0
- data/stdlib/tsort/0/cyclic.rbs +8 -0
- data/stdlib/tsort/0/interfaces.rbs +20 -0
- data/stdlib/tsort/0/tsort.rbs +410 -0
- data/stdlib/uri/0/common.rbs +621 -0
- data/stdlib/uri/0/file.rbs +118 -0
- data/stdlib/uri/0/ftp.rbs +13 -0
- data/stdlib/uri/0/generic.rbs +1116 -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 +211 -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 +168 -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 +201 -0
- data/wasm/README.md +59 -0
- data/wasm/rbs_wasm.c +411 -0
- metadata +660 -0
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
module RBS
|
|
2
|
+
module Unnamed
|
|
3
|
+
class TopLevelSelfClass
|
|
4
|
+
private
|
|
5
|
+
|
|
6
|
+
# <!--
|
|
7
|
+
# rdoc-file=eval.c
|
|
8
|
+
# - include(module, ...) -> self
|
|
9
|
+
# -->
|
|
10
|
+
# Invokes Module.append_features on each parameter in reverse order.
|
|
11
|
+
#
|
|
12
|
+
%a{annotate:rdoc:copy:Module#include}
|
|
13
|
+
def include: (Module, *Module arg0) -> self
|
|
14
|
+
|
|
15
|
+
# <!--
|
|
16
|
+
# rdoc-file=eval.c
|
|
17
|
+
# - using(module) -> self
|
|
18
|
+
# -->
|
|
19
|
+
# Import class refinements from *module* into the current class or module
|
|
20
|
+
# definition.
|
|
21
|
+
#
|
|
22
|
+
%a{annotate:rdoc:copy:Module#using}
|
|
23
|
+
def using: (Module arg0) -> self
|
|
24
|
+
|
|
25
|
+
# <!--
|
|
26
|
+
# rdoc-file=proc.c
|
|
27
|
+
# - define_method(symbol, method) -> symbol
|
|
28
|
+
# - define_method(symbol) { block } -> symbol
|
|
29
|
+
# -->
|
|
30
|
+
# Defines an instance method in the receiver. The *method* parameter can be a
|
|
31
|
+
# `Proc`, a `Method` or an `UnboundMethod` object. If a block is specified, it
|
|
32
|
+
# is used as the method body. If a block or the *method* parameter has
|
|
33
|
+
# parameters, they're used as method parameters. This block is evaluated using
|
|
34
|
+
# #instance_eval.
|
|
35
|
+
#
|
|
36
|
+
# class A
|
|
37
|
+
# def fred
|
|
38
|
+
# puts "In Fred"
|
|
39
|
+
# end
|
|
40
|
+
# def create_method(name, &block)
|
|
41
|
+
# self.class.define_method(name, &block)
|
|
42
|
+
# end
|
|
43
|
+
# define_method(:wilma) { puts "Charge it!" }
|
|
44
|
+
# define_method(:flint) {|name| puts "I'm #{name}!"}
|
|
45
|
+
# end
|
|
46
|
+
# class B < A
|
|
47
|
+
# define_method(:barney, instance_method(:fred))
|
|
48
|
+
# end
|
|
49
|
+
# a = B.new
|
|
50
|
+
# a.barney
|
|
51
|
+
# a.wilma
|
|
52
|
+
# a.flint('Dino')
|
|
53
|
+
# a.create_method(:betty) { p self }
|
|
54
|
+
# a.betty
|
|
55
|
+
#
|
|
56
|
+
# <em>produces:</em>
|
|
57
|
+
#
|
|
58
|
+
# In Fred
|
|
59
|
+
# Charge it!
|
|
60
|
+
# I'm Dino!
|
|
61
|
+
# #<B:0x401b39e8>
|
|
62
|
+
#
|
|
63
|
+
%a{annotate:rdoc:copy:Module#define_method}
|
|
64
|
+
def define_method: (interned symbol, ^(?) [self: top] -> untyped | Method | UnboundMethod method) -> Symbol
|
|
65
|
+
| (interned symbol) { (?) [self: top] -> untyped } -> Symbol
|
|
66
|
+
|
|
67
|
+
# <!--
|
|
68
|
+
# rdoc-file=vm_method.c
|
|
69
|
+
# - public -> nil
|
|
70
|
+
# - public(method_name) -> method_name
|
|
71
|
+
# - public(method_name, method_name, ...) -> array
|
|
72
|
+
# - public(array) -> array
|
|
73
|
+
# -->
|
|
74
|
+
# With no arguments, sets the default visibility for subsequently defined
|
|
75
|
+
# methods to public. With arguments, sets the named methods to have public
|
|
76
|
+
# visibility. String arguments are converted to symbols. An Array of Symbols
|
|
77
|
+
# and/or Strings is also accepted. If a single argument is passed, it is
|
|
78
|
+
# returned. If no argument is passed, nil is returned. If multiple arguments are
|
|
79
|
+
# passed, the arguments are returned as an array.
|
|
80
|
+
#
|
|
81
|
+
%a{annotate:rdoc:copy:Module#public}
|
|
82
|
+
def public: () -> nil
|
|
83
|
+
| (Symbol method_name) -> Symbol
|
|
84
|
+
| (Symbol, Symbol, *Symbol method_name) -> Array[Symbol]
|
|
85
|
+
| (string method_name) -> string
|
|
86
|
+
| (interned, interned, *interned method_name) -> Array[interned]
|
|
87
|
+
| (Array[interned]) -> Array[interned]
|
|
88
|
+
|
|
89
|
+
# <!--
|
|
90
|
+
# rdoc-file=vm_method.c
|
|
91
|
+
# - private -> nil
|
|
92
|
+
# - private(method_name) -> method_name
|
|
93
|
+
# - private(method_name, method_name, ...) -> array
|
|
94
|
+
# - private(array) -> array
|
|
95
|
+
# -->
|
|
96
|
+
# With no arguments, sets the default visibility for subsequently defined
|
|
97
|
+
# methods to private. With arguments, sets the named methods to have private
|
|
98
|
+
# visibility. String arguments are converted to symbols. An Array of Symbols
|
|
99
|
+
# and/or Strings is also accepted. If a single argument is passed, it is
|
|
100
|
+
# returned. If no argument is passed, nil is returned. If multiple arguments are
|
|
101
|
+
# passed, the arguments are returned as an array.
|
|
102
|
+
#
|
|
103
|
+
# module Mod
|
|
104
|
+
# def a() end
|
|
105
|
+
# def b() end
|
|
106
|
+
# private
|
|
107
|
+
# def c() end
|
|
108
|
+
# private :a
|
|
109
|
+
# end
|
|
110
|
+
# Mod.private_instance_methods #=> [:a, :c]
|
|
111
|
+
#
|
|
112
|
+
# Note that to show a private method on RDoc, use <code>:doc:</code>.
|
|
113
|
+
#
|
|
114
|
+
%a{annotate:rdoc:copy:Module#private}
|
|
115
|
+
def private: () -> nil
|
|
116
|
+
| (Symbol method_name) -> Symbol
|
|
117
|
+
| (Symbol, Symbol, *Symbol method_name) -> Array[Symbol]
|
|
118
|
+
| (string method_name) -> string
|
|
119
|
+
| (interned, interned, *interned method_name) -> Array[interned]
|
|
120
|
+
| (Array[interned]) -> Array[interned]
|
|
121
|
+
end
|
|
122
|
+
end
|
|
123
|
+
end
|
|
@@ -0,0 +1,186 @@
|
|
|
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`. Note that it behaves
|
|
35
|
+
# differently from Kernel.rand.
|
|
36
|
+
#
|
|
37
|
+
# prng.rand(1.5) # => 1.4600282860034115
|
|
38
|
+
# rand(1.5) # => 0
|
|
39
|
+
#
|
|
40
|
+
# When `range` is a Range, `rand` returns a random number where
|
|
41
|
+
# <code>range.member?(number) == true</code>.
|
|
42
|
+
#
|
|
43
|
+
# prng.rand(5..9) # => one of [5, 6, 7, 8, 9]
|
|
44
|
+
# prng.rand(5...9) # => one of [5, 6, 7, 8]
|
|
45
|
+
# prng.rand(5.0..9.0) # => between 5.0 and 9.0, including 9.0
|
|
46
|
+
# prng.rand(5.0...9.0) # => between 5.0 and 9.0, excluding 9.0
|
|
47
|
+
#
|
|
48
|
+
# Both the beginning and ending values of the range must respond to subtract
|
|
49
|
+
# (<code>-</code>) and add (<code>+</code>)methods, or rand will raise an
|
|
50
|
+
# ArgumentError.
|
|
51
|
+
#
|
|
52
|
+
%a{annotate:rdoc:copy:Random#rand}
|
|
53
|
+
def rand: (?0) -> Float
|
|
54
|
+
| (Integer | ::Range[Integer] max) -> Integer
|
|
55
|
+
| (Float | ::Range[Float] max) -> Float
|
|
56
|
+
|
|
57
|
+
# <!--
|
|
58
|
+
# rdoc-file=random.c
|
|
59
|
+
# - prng.bytes(size) -> string
|
|
60
|
+
# -->
|
|
61
|
+
# Returns a random binary string containing `size` bytes.
|
|
62
|
+
#
|
|
63
|
+
# random_string = Random.new.bytes(10) # => "\xD7:R\xAB?\x83\xCE\xFAkO"
|
|
64
|
+
# random_string.size # => 10
|
|
65
|
+
#
|
|
66
|
+
%a{annotate:rdoc:copy:Random#bytes}
|
|
67
|
+
def bytes: (Integer size) -> String
|
|
68
|
+
|
|
69
|
+
# <!--
|
|
70
|
+
# rdoc-file=random.c
|
|
71
|
+
# - prng.seed -> integer
|
|
72
|
+
# -->
|
|
73
|
+
# Returns the seed value used to initialize the generator. This may be used to
|
|
74
|
+
# initialize another generator with the same state at a later time, causing it
|
|
75
|
+
# to produce the same sequence of numbers.
|
|
76
|
+
#
|
|
77
|
+
# prng1 = Random.new(1234)
|
|
78
|
+
# prng1.seed #=> 1234
|
|
79
|
+
# prng1.rand(100) #=> 47
|
|
80
|
+
#
|
|
81
|
+
# prng2 = Random.new(prng1.seed)
|
|
82
|
+
# prng2.rand(100) #=> 47
|
|
83
|
+
#
|
|
84
|
+
%a{annotate:rdoc:copy:Random#seed}
|
|
85
|
+
def seed: () -> Integer
|
|
86
|
+
end
|
|
87
|
+
|
|
88
|
+
# <!-- rdoc-file=lib/random/formatter.rb -->
|
|
89
|
+
# ## Random number formatter.
|
|
90
|
+
#
|
|
91
|
+
# Formats generated random numbers in many manners. When
|
|
92
|
+
# <code>'random/formatter'</code> is required, several methods are added to
|
|
93
|
+
# empty core module <code>Random::Formatter</code>, making them available as
|
|
94
|
+
# Random's instance and module methods.
|
|
95
|
+
#
|
|
96
|
+
# Standard library SecureRandom is also extended with the module, and the
|
|
97
|
+
# methods described below are available as a module methods in it.
|
|
98
|
+
#
|
|
99
|
+
# ### Examples
|
|
100
|
+
#
|
|
101
|
+
# Generate random hexadecimal strings:
|
|
102
|
+
#
|
|
103
|
+
# require 'random/formatter'
|
|
104
|
+
#
|
|
105
|
+
# prng = Random.new
|
|
106
|
+
# prng.hex(10) #=> "52750b30ffbc7de3b362"
|
|
107
|
+
# prng.hex(10) #=> "92b15d6c8dc4beb5f559"
|
|
108
|
+
# prng.hex(13) #=> "39b290146bea6ce975c37cfc23"
|
|
109
|
+
# # or just
|
|
110
|
+
# Random.hex #=> "1aed0c631e41be7f77365415541052ee"
|
|
111
|
+
#
|
|
112
|
+
# Generate random base64 strings:
|
|
113
|
+
#
|
|
114
|
+
# prng.base64(10) #=> "EcmTPZwWRAozdA=="
|
|
115
|
+
# prng.base64(10) #=> "KO1nIU+p9DKxGg=="
|
|
116
|
+
# prng.base64(12) #=> "7kJSM/MzBJI+75j8"
|
|
117
|
+
# Random.base64(4) #=> "bsQ3fQ=="
|
|
118
|
+
#
|
|
119
|
+
# Generate random binary strings:
|
|
120
|
+
#
|
|
121
|
+
# prng.random_bytes(10) #=> "\016\t{\370g\310pbr\301"
|
|
122
|
+
# prng.random_bytes(10) #=> "\323U\030TO\234\357\020\a\337"
|
|
123
|
+
# Random.random_bytes(6) #=> "\xA1\xE6Lr\xC43"
|
|
124
|
+
#
|
|
125
|
+
# Generate alphanumeric strings:
|
|
126
|
+
#
|
|
127
|
+
# prng.alphanumeric(10) #=> "S8baxMJnPl"
|
|
128
|
+
# prng.alphanumeric(10) #=> "aOxAg8BAJe"
|
|
129
|
+
# Random.alphanumeric #=> "TmP9OsJHJLtaZYhP"
|
|
130
|
+
#
|
|
131
|
+
# Generate UUIDs:
|
|
132
|
+
#
|
|
133
|
+
# prng.uuid #=> "2d931510-d99f-494a-8c67-87feb05e1594"
|
|
134
|
+
# prng.uuid #=> "bad85eb9-0713-4da7-8d36-07a8e4b00eab"
|
|
135
|
+
# Random.uuid #=> "f14e0271-de96-45cc-8911-8910292a42cd"
|
|
136
|
+
#
|
|
137
|
+
# All methods are available in the standard library SecureRandom, too:
|
|
138
|
+
#
|
|
139
|
+
# SecureRandom.hex #=> "05b45376a30c67238eb93b16499e50cf"
|
|
140
|
+
#
|
|
141
|
+
# <!-- rdoc-file=random.c -->
|
|
142
|
+
# Generate a random number in the given range as Random does
|
|
143
|
+
#
|
|
144
|
+
# prng.random_number #=> 0.5816771641321361
|
|
145
|
+
# prng.random_number(1000) #=> 485
|
|
146
|
+
# prng.random_number(1..6) #=> 3
|
|
147
|
+
# prng.rand #=> 0.5816771641321361
|
|
148
|
+
# prng.rand(1000) #=> 485
|
|
149
|
+
# prng.rand(1..6) #=> 3
|
|
150
|
+
#
|
|
151
|
+
%a{annotate:rdoc:copy:Random::Formatter}
|
|
152
|
+
module Random_Formatter
|
|
153
|
+
# <!-- rdoc-file=random.c -->
|
|
154
|
+
# Generates formatted random number from raw random bytes. See Random#rand.
|
|
155
|
+
#
|
|
156
|
+
%a{annotate:rdoc:copy:Random::Formatter#rand}
|
|
157
|
+
def rand: (?0) -> Float
|
|
158
|
+
| (Float? n) -> Float
|
|
159
|
+
| (Integer n) -> Integer
|
|
160
|
+
| (Numeric n) -> Numeric
|
|
161
|
+
| (::Range[Float] n) -> Float
|
|
162
|
+
| (::Range[Integer] n) -> Integer
|
|
163
|
+
| (::Range[Numeric] n) -> Numeric
|
|
164
|
+
|
|
165
|
+
# <!--
|
|
166
|
+
# rdoc-file=random.c
|
|
167
|
+
# - prng.random_number -> float
|
|
168
|
+
# - prng.random_number(max) -> number
|
|
169
|
+
# - prng.random_number(range) -> number
|
|
170
|
+
# - prng.rand -> float
|
|
171
|
+
# - prng.rand(max) -> number
|
|
172
|
+
# - prng.rand(range) -> number
|
|
173
|
+
# -->
|
|
174
|
+
# Generates formatted random number from raw random bytes. See Random#rand.
|
|
175
|
+
#
|
|
176
|
+
%a{annotate:rdoc:copy:Random::Formatter#random_number}
|
|
177
|
+
def random_number: () -> Float
|
|
178
|
+
| (?Float? n) -> Float
|
|
179
|
+
| (?Integer? n) -> Integer
|
|
180
|
+
| (?Numeric? n) -> Numeric
|
|
181
|
+
| (?::Range[Float]? n) -> Float
|
|
182
|
+
| (?::Range[Integer]? n) -> Integer
|
|
183
|
+
| (?::Range[Numeric]? n) -> Numeric
|
|
184
|
+
end
|
|
185
|
+
end
|
|
186
|
+
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
|