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
data/core/file_stat.rbs
ADDED
|
@@ -0,0 +1,534 @@
|
|
|
1
|
+
# <!-- rdoc-file=file.c -->
|
|
2
|
+
# Objects of class File::Stat encapsulate common status information for File
|
|
3
|
+
# objects. The information is recorded at the moment the File::Stat object is
|
|
4
|
+
# created; changes made to the file after that point will not be reflected.
|
|
5
|
+
# File::Stat objects are returned by IO#stat, File::stat, File#lstat, and
|
|
6
|
+
# File::lstat. Many of these methods return platform-specific values, and not
|
|
7
|
+
# all values are meaningful on all systems. See also Kernel#test.
|
|
8
|
+
#
|
|
9
|
+
class File::Stat
|
|
10
|
+
include Comparable
|
|
11
|
+
|
|
12
|
+
# <!--
|
|
13
|
+
# rdoc-file=file.c
|
|
14
|
+
# - File::Stat.new(file_name) -> stat
|
|
15
|
+
# -->
|
|
16
|
+
# Create a File::Stat object for the given file name (raising an exception if
|
|
17
|
+
# the file doesn't exist).
|
|
18
|
+
#
|
|
19
|
+
def initialize: (path file_name) -> void
|
|
20
|
+
|
|
21
|
+
def initialize_copy: (self other) -> void
|
|
22
|
+
|
|
23
|
+
# <!--
|
|
24
|
+
# rdoc-file=file.c
|
|
25
|
+
# - self <=> other -> -1, 0, 1, or nil
|
|
26
|
+
# -->
|
|
27
|
+
# Compares `self` and `other`, by comparing their modification times; that is,
|
|
28
|
+
# by comparing <code>self.mtime</code> and <code>other.mtime</code>.
|
|
29
|
+
#
|
|
30
|
+
# Returns:
|
|
31
|
+
#
|
|
32
|
+
# * <code>-1</code>, if <code>self.mtime</code> is earlier.
|
|
33
|
+
# * `0`, if the two values are equal.
|
|
34
|
+
# * `1`, if <code>self.mtime</code> is later.
|
|
35
|
+
# * `nil`, if `other` is not a File::Stat object.
|
|
36
|
+
#
|
|
37
|
+
# Examples:
|
|
38
|
+
#
|
|
39
|
+
# stat0 = File.stat('README.md')
|
|
40
|
+
# stat1 = File.stat('NEWS.md')
|
|
41
|
+
# stat0.mtime # => 2025-12-20 15:33:05.6972341 -0600
|
|
42
|
+
# stat1.mtime # => 2025-12-20 16:02:08.2672945 -0600
|
|
43
|
+
# stat0 <=> stat1 # => -1
|
|
44
|
+
# stat0 <=> stat0.dup # => 0
|
|
45
|
+
# stat1 <=> stat0 # => 1
|
|
46
|
+
# stat0 <=> :foo # => nil
|
|
47
|
+
#
|
|
48
|
+
# Class File::Stat includes module Comparable, each of whose methods uses
|
|
49
|
+
# File::Stat#<=> for comparison.
|
|
50
|
+
#
|
|
51
|
+
def <=>: (self other) -> (-1 | 0 | 1)
|
|
52
|
+
| (untyped) -> (-1 | 0 | 1)?
|
|
53
|
+
|
|
54
|
+
# <!--
|
|
55
|
+
# rdoc-file=file.c
|
|
56
|
+
# - stat.atime -> time
|
|
57
|
+
# -->
|
|
58
|
+
# Returns the last access time for this file as an object of class Time.
|
|
59
|
+
#
|
|
60
|
+
# File.stat("testfile").atime #=> Wed Dec 31 18:00:00 CST 1969
|
|
61
|
+
#
|
|
62
|
+
def atime: () -> Time
|
|
63
|
+
|
|
64
|
+
# <!--
|
|
65
|
+
# rdoc-file=file.c
|
|
66
|
+
# - stat.birthtime -> time
|
|
67
|
+
# -->
|
|
68
|
+
# Returns the birth time for *stat*.
|
|
69
|
+
#
|
|
70
|
+
# If the platform doesn't have birthtime, raises NotImplementedError.
|
|
71
|
+
#
|
|
72
|
+
# File.write("testfile", "foo")
|
|
73
|
+
# sleep 10
|
|
74
|
+
# File.write("testfile", "bar")
|
|
75
|
+
# sleep 10
|
|
76
|
+
# File.chmod(0644, "testfile")
|
|
77
|
+
# sleep 10
|
|
78
|
+
# File.read("testfile")
|
|
79
|
+
# File.stat("testfile").birthtime #=> 2014-02-24 11:19:17 +0900
|
|
80
|
+
# File.stat("testfile").mtime #=> 2014-02-24 11:19:27 +0900
|
|
81
|
+
# File.stat("testfile").ctime #=> 2014-02-24 11:19:37 +0900
|
|
82
|
+
# File.stat("testfile").atime #=> 2014-02-24 11:19:47 +0900
|
|
83
|
+
#
|
|
84
|
+
def birthtime: () -> Time
|
|
85
|
+
|
|
86
|
+
# <!--
|
|
87
|
+
# rdoc-file=file.c
|
|
88
|
+
# - stat.blksize -> integer or nil
|
|
89
|
+
# -->
|
|
90
|
+
# Returns the native file system's block size. Will return `nil` on platforms
|
|
91
|
+
# that don't support this information.
|
|
92
|
+
#
|
|
93
|
+
# File.stat("testfile").blksize #=> 4096
|
|
94
|
+
#
|
|
95
|
+
def blksize: () -> Integer?
|
|
96
|
+
|
|
97
|
+
# <!--
|
|
98
|
+
# rdoc-file=file.c
|
|
99
|
+
# - stat.blockdev? -> true or false
|
|
100
|
+
# -->
|
|
101
|
+
# Returns `true` if the file is a block device, `false` if it isn't or if the
|
|
102
|
+
# operating system doesn't support this feature.
|
|
103
|
+
#
|
|
104
|
+
# File.stat("testfile").blockdev? #=> false
|
|
105
|
+
# File.stat("/dev/hda1").blockdev? #=> true
|
|
106
|
+
#
|
|
107
|
+
def blockdev?: () -> bool
|
|
108
|
+
|
|
109
|
+
# <!--
|
|
110
|
+
# rdoc-file=file.c
|
|
111
|
+
# - stat.blocks -> integer or nil
|
|
112
|
+
# -->
|
|
113
|
+
# Returns the number of native file system blocks allocated for this file, or
|
|
114
|
+
# `nil` if the operating system doesn't support this feature.
|
|
115
|
+
#
|
|
116
|
+
# File.stat("testfile").blocks #=> 2
|
|
117
|
+
#
|
|
118
|
+
def blocks: () -> Integer?
|
|
119
|
+
|
|
120
|
+
# <!--
|
|
121
|
+
# rdoc-file=file.c
|
|
122
|
+
# - stat.chardev? -> true or false
|
|
123
|
+
# -->
|
|
124
|
+
# Returns `true` if the file is a character device, `false` if it isn't or if
|
|
125
|
+
# the operating system doesn't support this feature.
|
|
126
|
+
#
|
|
127
|
+
# File.stat("/dev/tty").chardev? #=> true
|
|
128
|
+
#
|
|
129
|
+
def chardev?: () -> bool
|
|
130
|
+
|
|
131
|
+
# <!--
|
|
132
|
+
# rdoc-file=file.c
|
|
133
|
+
# - stat.ctime -> time
|
|
134
|
+
# -->
|
|
135
|
+
# Returns the change time for *stat* (that is, the time directory information
|
|
136
|
+
# about the file was changed, not the file itself).
|
|
137
|
+
#
|
|
138
|
+
# Note that on Windows (NTFS), returns creation time (birth time).
|
|
139
|
+
#
|
|
140
|
+
# File.stat("testfile").ctime #=> Wed Apr 09 08:53:14 CDT 2003
|
|
141
|
+
#
|
|
142
|
+
def ctime: () -> Time
|
|
143
|
+
|
|
144
|
+
# <!--
|
|
145
|
+
# rdoc-file=file.c
|
|
146
|
+
# - stat.dev -> integer
|
|
147
|
+
# -->
|
|
148
|
+
# Returns an integer representing the device on which *stat* resides.
|
|
149
|
+
#
|
|
150
|
+
# File.stat("testfile").dev #=> 774
|
|
151
|
+
#
|
|
152
|
+
def dev: () -> Integer
|
|
153
|
+
|
|
154
|
+
# <!--
|
|
155
|
+
# rdoc-file=file.c
|
|
156
|
+
# - stat.dev_major -> integer
|
|
157
|
+
# -->
|
|
158
|
+
# Returns the major part of <code>File_Stat#dev</code> or `nil`.
|
|
159
|
+
#
|
|
160
|
+
# File.stat("/dev/fd1").dev_major #=> 2
|
|
161
|
+
# File.stat("/dev/tty").dev_major #=> 5
|
|
162
|
+
#
|
|
163
|
+
def dev_major: () -> Integer?
|
|
164
|
+
|
|
165
|
+
# <!--
|
|
166
|
+
# rdoc-file=file.c
|
|
167
|
+
# - stat.dev_minor -> integer
|
|
168
|
+
# -->
|
|
169
|
+
# Returns the minor part of <code>File_Stat#dev</code> or `nil`.
|
|
170
|
+
#
|
|
171
|
+
# File.stat("/dev/fd1").dev_minor #=> 1
|
|
172
|
+
# File.stat("/dev/tty").dev_minor #=> 0
|
|
173
|
+
#
|
|
174
|
+
def dev_minor: () -> Integer?
|
|
175
|
+
|
|
176
|
+
# <!--
|
|
177
|
+
# rdoc-file=file.c
|
|
178
|
+
# - stat.directory? -> true or false
|
|
179
|
+
# -->
|
|
180
|
+
# Returns `true` if *stat* is a directory, `false` otherwise.
|
|
181
|
+
#
|
|
182
|
+
# File.stat("testfile").directory? #=> false
|
|
183
|
+
# File.stat(".").directory? #=> true
|
|
184
|
+
#
|
|
185
|
+
def directory?: () -> bool
|
|
186
|
+
|
|
187
|
+
# <!--
|
|
188
|
+
# rdoc-file=file.c
|
|
189
|
+
# - stat.executable? -> true or false
|
|
190
|
+
# -->
|
|
191
|
+
# Returns `true` if *stat* is executable or if the operating system doesn't
|
|
192
|
+
# distinguish executable files from nonexecutable files. The tests are made
|
|
193
|
+
# using the effective owner of the process.
|
|
194
|
+
#
|
|
195
|
+
# File.stat("testfile").executable? #=> false
|
|
196
|
+
#
|
|
197
|
+
def executable?: () -> bool
|
|
198
|
+
|
|
199
|
+
# <!--
|
|
200
|
+
# rdoc-file=file.c
|
|
201
|
+
# - stat.executable_real? -> true or false
|
|
202
|
+
# -->
|
|
203
|
+
# Same as <code>executable?</code>, but tests using the real owner of the
|
|
204
|
+
# process.
|
|
205
|
+
#
|
|
206
|
+
def executable_real?: () -> bool
|
|
207
|
+
|
|
208
|
+
# <!--
|
|
209
|
+
# rdoc-file=file.c
|
|
210
|
+
# - stat.file? -> true or false
|
|
211
|
+
# -->
|
|
212
|
+
# Returns `true` if *stat* is a regular file (not a device file, pipe, socket,
|
|
213
|
+
# etc.).
|
|
214
|
+
#
|
|
215
|
+
# File.stat("testfile").file? #=> true
|
|
216
|
+
#
|
|
217
|
+
def file?: () -> bool
|
|
218
|
+
|
|
219
|
+
# <!--
|
|
220
|
+
# rdoc-file=file.c
|
|
221
|
+
# - stat.ftype -> string
|
|
222
|
+
# -->
|
|
223
|
+
# Identifies the type of *stat*. The return string is one of: ```file`'',
|
|
224
|
+
# ```directory`'', ```characterSpecial`'', ```blockSpecial`'', ```fifo`'',
|
|
225
|
+
# ```link`'', ```socket`'', or ```unknown`''.
|
|
226
|
+
#
|
|
227
|
+
# File.stat("/dev/tty").ftype #=> "characterSpecial"
|
|
228
|
+
#
|
|
229
|
+
def ftype: () -> File::ftype
|
|
230
|
+
|
|
231
|
+
# <!--
|
|
232
|
+
# rdoc-file=file.c
|
|
233
|
+
# - stat.gid -> integer
|
|
234
|
+
# -->
|
|
235
|
+
# Returns the numeric group id of the owner of *stat*.
|
|
236
|
+
#
|
|
237
|
+
# File.stat("testfile").gid #=> 500
|
|
238
|
+
#
|
|
239
|
+
def gid: () -> Integer
|
|
240
|
+
|
|
241
|
+
# <!--
|
|
242
|
+
# rdoc-file=file.c
|
|
243
|
+
# - stat.grpowned? -> true or false
|
|
244
|
+
# -->
|
|
245
|
+
# Returns true if the effective group id of the process is the same as the group
|
|
246
|
+
# id of *stat*. On Windows, returns `false`.
|
|
247
|
+
#
|
|
248
|
+
# File.stat("testfile").grpowned? #=> true
|
|
249
|
+
# File.stat("/etc/passwd").grpowned? #=> false
|
|
250
|
+
#
|
|
251
|
+
def grpowned?: () -> bool
|
|
252
|
+
|
|
253
|
+
# <!--
|
|
254
|
+
# rdoc-file=file.c
|
|
255
|
+
# - stat.ino -> integer
|
|
256
|
+
# -->
|
|
257
|
+
# Returns the inode number for *stat*.
|
|
258
|
+
#
|
|
259
|
+
# File.stat("testfile").ino #=> 1083669
|
|
260
|
+
#
|
|
261
|
+
def ino: () -> Integer
|
|
262
|
+
|
|
263
|
+
# <!--
|
|
264
|
+
# rdoc-file=file.c
|
|
265
|
+
# - stat.inspect -> string
|
|
266
|
+
# -->
|
|
267
|
+
# Produce a nicely formatted description of *stat*.
|
|
268
|
+
#
|
|
269
|
+
# File.stat("/etc/passwd").inspect
|
|
270
|
+
# #=> "#<File::Stat dev=0xe000005, ino=1078078, mode=0100644,
|
|
271
|
+
# # nlink=1, uid=0, gid=0, rdev=0x0, size=1374, blksize=4096,
|
|
272
|
+
# # blocks=8, atime=Wed Dec 10 10:16:12 CST 2003,
|
|
273
|
+
# # mtime=Fri Sep 12 15:41:41 CDT 2003,
|
|
274
|
+
# # ctime=Mon Oct 27 11:20:27 CST 2003,
|
|
275
|
+
# # birthtime=Mon Aug 04 08:13:49 CDT 2003>"
|
|
276
|
+
#
|
|
277
|
+
def inspect: () -> String
|
|
278
|
+
|
|
279
|
+
# <!--
|
|
280
|
+
# rdoc-file=file.c
|
|
281
|
+
# - stat.mode -> integer
|
|
282
|
+
# -->
|
|
283
|
+
# Returns an integer representing the permission bits of *stat*. The meaning of
|
|
284
|
+
# the bits is platform dependent; on Unix systems, see <code>stat(2)</code>.
|
|
285
|
+
#
|
|
286
|
+
# File.chmod(0644, "testfile") #=> 1
|
|
287
|
+
# s = File.stat("testfile")
|
|
288
|
+
# sprintf("%o", s.mode) #=> "100644"
|
|
289
|
+
#
|
|
290
|
+
def mode: () -> Integer
|
|
291
|
+
|
|
292
|
+
# <!--
|
|
293
|
+
# rdoc-file=file.c
|
|
294
|
+
# - stat.mtime -> time
|
|
295
|
+
# -->
|
|
296
|
+
# Returns the modification time of *stat*.
|
|
297
|
+
#
|
|
298
|
+
# File.stat("testfile").mtime #=> Wed Apr 09 08:53:14 CDT 2003
|
|
299
|
+
#
|
|
300
|
+
def mtime: () -> Time
|
|
301
|
+
|
|
302
|
+
# <!--
|
|
303
|
+
# rdoc-file=file.c
|
|
304
|
+
# - stat.nlink -> integer
|
|
305
|
+
# -->
|
|
306
|
+
# Returns the number of hard links to *stat*.
|
|
307
|
+
#
|
|
308
|
+
# File.stat("testfile").nlink #=> 1
|
|
309
|
+
# File.link("testfile", "testfile.bak") #=> 0
|
|
310
|
+
# File.stat("testfile").nlink #=> 2
|
|
311
|
+
#
|
|
312
|
+
def nlink: () -> Integer
|
|
313
|
+
|
|
314
|
+
# <!--
|
|
315
|
+
# rdoc-file=file.c
|
|
316
|
+
# - stat.owned? -> true or false
|
|
317
|
+
# -->
|
|
318
|
+
# Returns `true` if the effective user id of the process is the same as the
|
|
319
|
+
# owner of *stat*.
|
|
320
|
+
#
|
|
321
|
+
# File.stat("testfile").owned? #=> true
|
|
322
|
+
# File.stat("/etc/passwd").owned? #=> false
|
|
323
|
+
#
|
|
324
|
+
def owned?: () -> bool
|
|
325
|
+
|
|
326
|
+
# <!--
|
|
327
|
+
# rdoc-file=file.c
|
|
328
|
+
# - stat.pipe? -> true or false
|
|
329
|
+
# -->
|
|
330
|
+
# Returns `true` if the operating system supports pipes and *stat* is a pipe;
|
|
331
|
+
# `false` otherwise.
|
|
332
|
+
#
|
|
333
|
+
def pipe?: () -> bool
|
|
334
|
+
|
|
335
|
+
# <!--
|
|
336
|
+
# rdoc-file=file.c
|
|
337
|
+
# - stat.rdev -> integer or nil
|
|
338
|
+
# -->
|
|
339
|
+
# Returns an integer representing the device type on which *stat* resides.
|
|
340
|
+
# Returns `nil` if the operating system doesn't support this feature.
|
|
341
|
+
#
|
|
342
|
+
# File.stat("/dev/fd1").rdev #=> 513
|
|
343
|
+
# File.stat("/dev/tty").rdev #=> 1280
|
|
344
|
+
#
|
|
345
|
+
def rdev: () -> Integer?
|
|
346
|
+
|
|
347
|
+
# <!--
|
|
348
|
+
# rdoc-file=file.c
|
|
349
|
+
# - stat.rdev_major -> integer
|
|
350
|
+
# -->
|
|
351
|
+
# Returns the major part of <code>File_Stat#rdev</code> or `nil`.
|
|
352
|
+
#
|
|
353
|
+
# File.stat("/dev/fd1").rdev_major #=> 2
|
|
354
|
+
# File.stat("/dev/tty").rdev_major #=> 5
|
|
355
|
+
#
|
|
356
|
+
def rdev_major: () -> Integer?
|
|
357
|
+
|
|
358
|
+
# <!--
|
|
359
|
+
# rdoc-file=file.c
|
|
360
|
+
# - stat.rdev_minor -> integer
|
|
361
|
+
# -->
|
|
362
|
+
# Returns the minor part of <code>File_Stat#rdev</code> or `nil`.
|
|
363
|
+
#
|
|
364
|
+
# File.stat("/dev/fd1").rdev_minor #=> 1
|
|
365
|
+
# File.stat("/dev/tty").rdev_minor #=> 0
|
|
366
|
+
#
|
|
367
|
+
def rdev_minor: () -> Integer?
|
|
368
|
+
|
|
369
|
+
# <!--
|
|
370
|
+
# rdoc-file=file.c
|
|
371
|
+
# - stat.readable? -> true or false
|
|
372
|
+
# -->
|
|
373
|
+
# Returns `true` if *stat* is readable by the effective user id of this process.
|
|
374
|
+
#
|
|
375
|
+
# File.stat("testfile").readable? #=> true
|
|
376
|
+
#
|
|
377
|
+
def readable?: () -> bool
|
|
378
|
+
|
|
379
|
+
# <!--
|
|
380
|
+
# rdoc-file=file.c
|
|
381
|
+
# - stat.readable_real? -> true or false
|
|
382
|
+
# -->
|
|
383
|
+
# Returns `true` if *stat* is readable by the real user id of this process.
|
|
384
|
+
#
|
|
385
|
+
# File.stat("testfile").readable_real? #=> true
|
|
386
|
+
#
|
|
387
|
+
def readable_real?: () -> bool
|
|
388
|
+
|
|
389
|
+
# <!--
|
|
390
|
+
# rdoc-file=file.c
|
|
391
|
+
# - stat.setgid? -> true or false
|
|
392
|
+
# -->
|
|
393
|
+
# Returns `true` if *stat* has the set-group-id permission bit set, `false` if
|
|
394
|
+
# it doesn't or if the operating system doesn't support this feature.
|
|
395
|
+
#
|
|
396
|
+
# File.stat("/usr/sbin/lpc").setgid? #=> true
|
|
397
|
+
#
|
|
398
|
+
def setgid?: () -> bool
|
|
399
|
+
|
|
400
|
+
# <!--
|
|
401
|
+
# rdoc-file=file.c
|
|
402
|
+
# - stat.setuid? -> true or false
|
|
403
|
+
# -->
|
|
404
|
+
# Returns `true` if *stat* has the set-user-id permission bit set, `false` if it
|
|
405
|
+
# doesn't or if the operating system doesn't support this feature.
|
|
406
|
+
#
|
|
407
|
+
# File.stat("/bin/su").setuid? #=> true
|
|
408
|
+
#
|
|
409
|
+
def setuid?: () -> bool
|
|
410
|
+
|
|
411
|
+
# <!--
|
|
412
|
+
# rdoc-file=file.c
|
|
413
|
+
# - stat.size -> integer
|
|
414
|
+
# -->
|
|
415
|
+
# Returns the size of *stat* in bytes.
|
|
416
|
+
#
|
|
417
|
+
# File.stat("testfile").size #=> 66
|
|
418
|
+
#
|
|
419
|
+
def size: () -> Integer
|
|
420
|
+
|
|
421
|
+
# <!--
|
|
422
|
+
# rdoc-file=file.c
|
|
423
|
+
# - stat.size? -> Integer or nil
|
|
424
|
+
# -->
|
|
425
|
+
# Returns `nil` if *stat* is a zero-length file, the size of the file otherwise.
|
|
426
|
+
#
|
|
427
|
+
# File.stat("testfile").size? #=> 66
|
|
428
|
+
# File.stat(File::NULL).size? #=> nil
|
|
429
|
+
#
|
|
430
|
+
def size?: () -> Integer?
|
|
431
|
+
|
|
432
|
+
# <!--
|
|
433
|
+
# rdoc-file=file.c
|
|
434
|
+
# - stat.socket? -> true or false
|
|
435
|
+
# -->
|
|
436
|
+
# Returns `true` if *stat* is a socket, `false` if it isn't or if the operating
|
|
437
|
+
# system doesn't support this feature.
|
|
438
|
+
#
|
|
439
|
+
# File.stat("testfile").socket? #=> false
|
|
440
|
+
#
|
|
441
|
+
def socket?: () -> bool
|
|
442
|
+
|
|
443
|
+
# <!--
|
|
444
|
+
# rdoc-file=file.c
|
|
445
|
+
# - stat.sticky? -> true or false
|
|
446
|
+
# -->
|
|
447
|
+
# Returns `true` if *stat* has its sticky bit set, `false` if it doesn't or if
|
|
448
|
+
# the operating system doesn't support this feature.
|
|
449
|
+
#
|
|
450
|
+
# File.stat("testfile").sticky? #=> false
|
|
451
|
+
#
|
|
452
|
+
def sticky?: () -> bool
|
|
453
|
+
|
|
454
|
+
# <!--
|
|
455
|
+
# rdoc-file=file.c
|
|
456
|
+
# - stat.symlink? -> true or false
|
|
457
|
+
# -->
|
|
458
|
+
# Returns `true` if *stat* is a symbolic link, `false` if it isn't or if the
|
|
459
|
+
# operating system doesn't support this feature. As File::stat automatically
|
|
460
|
+
# follows symbolic links, #symlink? will always be `false` for an object
|
|
461
|
+
# returned by File::stat.
|
|
462
|
+
#
|
|
463
|
+
# File.symlink("testfile", "alink") #=> 0
|
|
464
|
+
# File.stat("alink").symlink? #=> false
|
|
465
|
+
# File.lstat("alink").symlink? #=> true
|
|
466
|
+
#
|
|
467
|
+
def symlink?: () -> bool
|
|
468
|
+
|
|
469
|
+
# <!--
|
|
470
|
+
# rdoc-file=file.c
|
|
471
|
+
# - stat.uid -> integer
|
|
472
|
+
# -->
|
|
473
|
+
# Returns the numeric user id of the owner of *stat*.
|
|
474
|
+
#
|
|
475
|
+
# File.stat("testfile").uid #=> 501
|
|
476
|
+
#
|
|
477
|
+
def uid: () -> Integer
|
|
478
|
+
|
|
479
|
+
# <!--
|
|
480
|
+
# rdoc-file=file.c
|
|
481
|
+
# - stat.world_readable? -> integer or nil
|
|
482
|
+
# -->
|
|
483
|
+
# If *stat* is readable by others, returns an integer representing the file
|
|
484
|
+
# permission bits of *stat*. Returns `nil` otherwise. The meaning of the bits is
|
|
485
|
+
# platform dependent; on Unix systems, see <code>stat(2)</code>.
|
|
486
|
+
#
|
|
487
|
+
# m = File.stat("/etc/passwd").world_readable? #=> 420
|
|
488
|
+
# sprintf("%o", m) #=> "644"
|
|
489
|
+
#
|
|
490
|
+
def world_readable?: () -> Integer?
|
|
491
|
+
|
|
492
|
+
# <!--
|
|
493
|
+
# rdoc-file=file.c
|
|
494
|
+
# - stat.world_writable? -> integer or nil
|
|
495
|
+
# -->
|
|
496
|
+
# If *stat* is writable by others, returns an integer representing the file
|
|
497
|
+
# permission bits of *stat*. Returns `nil` otherwise. The meaning of the bits is
|
|
498
|
+
# platform dependent; on Unix systems, see <code>stat(2)</code>.
|
|
499
|
+
#
|
|
500
|
+
# m = File.stat("/tmp").world_writable? #=> 511
|
|
501
|
+
# sprintf("%o", m) #=> "777"
|
|
502
|
+
#
|
|
503
|
+
def world_writable?: () -> Integer?
|
|
504
|
+
|
|
505
|
+
# <!--
|
|
506
|
+
# rdoc-file=file.c
|
|
507
|
+
# - stat.writable? -> true or false
|
|
508
|
+
# -->
|
|
509
|
+
# Returns `true` if *stat* is writable by the effective user id of this process.
|
|
510
|
+
#
|
|
511
|
+
# File.stat("testfile").writable? #=> true
|
|
512
|
+
#
|
|
513
|
+
def writable?: () -> bool
|
|
514
|
+
|
|
515
|
+
# <!--
|
|
516
|
+
# rdoc-file=file.c
|
|
517
|
+
# - stat.writable_real? -> true or false
|
|
518
|
+
# -->
|
|
519
|
+
# Returns `true` if *stat* is writable by the real user id of this process.
|
|
520
|
+
#
|
|
521
|
+
# File.stat("testfile").writable_real? #=> true
|
|
522
|
+
#
|
|
523
|
+
def writable_real?: () -> bool
|
|
524
|
+
|
|
525
|
+
# <!--
|
|
526
|
+
# rdoc-file=file.c
|
|
527
|
+
# - stat.zero? -> true or false
|
|
528
|
+
# -->
|
|
529
|
+
# Returns `true` if *stat* is a zero-length file; `false` otherwise.
|
|
530
|
+
#
|
|
531
|
+
# File.stat("testfile").zero? #=> false
|
|
532
|
+
#
|
|
533
|
+
def zero?: () -> bool
|
|
534
|
+
end
|