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,1830 @@
|
|
1
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
2
|
+
# Resolv is a thread-aware DNS resolver library written in Ruby. Resolv can
|
3
|
+
# handle multiple DNS requests concurrently without blocking the entire Ruby
|
4
|
+
# interpreter.
|
5
|
+
#
|
6
|
+
# See also resolv-replace.rb to replace the libc resolver with Resolv.
|
7
|
+
#
|
8
|
+
# Resolv can look up various DNS resources using the DNS module directly.
|
9
|
+
#
|
10
|
+
# Examples:
|
11
|
+
#
|
12
|
+
# p Resolv.getaddress "www.ruby-lang.org"
|
13
|
+
# p Resolv.getname "210.251.121.214"
|
14
|
+
#
|
15
|
+
# Resolv::DNS.open do |dns|
|
16
|
+
# ress = dns.getresources "www.ruby-lang.org", Resolv::DNS::Resource::IN::A
|
17
|
+
# p ress.map(&:address)
|
18
|
+
# ress = dns.getresources "ruby-lang.org", Resolv::DNS::Resource::IN::MX
|
19
|
+
# p ress.map { |r| [r.exchange.to_s, r.preference] }
|
20
|
+
# end
|
21
|
+
#
|
22
|
+
# ## Bugs
|
23
|
+
#
|
24
|
+
# * NIS is not supported.
|
25
|
+
# * /etc/nsswitch.conf is not supported.
|
26
|
+
#
|
27
|
+
%a{annotate:rdoc:source:from=lib/resolv.rb}
|
28
|
+
class Resolv
|
29
|
+
# <!--
|
30
|
+
# rdoc-file=lib/resolv.rb
|
31
|
+
# - each_address(name, &block)
|
32
|
+
# -->
|
33
|
+
# Iterates over all IP addresses for `name`.
|
34
|
+
#
|
35
|
+
def self.each_address: (String name) { (String) -> void } -> void
|
36
|
+
|
37
|
+
# <!--
|
38
|
+
# rdoc-file=lib/resolv.rb
|
39
|
+
# - each_name(address, &proc)
|
40
|
+
# -->
|
41
|
+
# Iterates over all hostnames for `address`.
|
42
|
+
#
|
43
|
+
def self.each_name: (String address) { (String) -> void } -> void
|
44
|
+
|
45
|
+
# <!--
|
46
|
+
# rdoc-file=lib/resolv.rb
|
47
|
+
# - getaddress(name)
|
48
|
+
# -->
|
49
|
+
# Looks up the first IP address for `name`.
|
50
|
+
#
|
51
|
+
def self.getaddress: (String name) -> String
|
52
|
+
|
53
|
+
# <!--
|
54
|
+
# rdoc-file=lib/resolv.rb
|
55
|
+
# - getaddresses(name)
|
56
|
+
# -->
|
57
|
+
# Looks up all IP address for `name`.
|
58
|
+
#
|
59
|
+
def self.getaddresses: (String name) -> Array[String]
|
60
|
+
|
61
|
+
# <!--
|
62
|
+
# rdoc-file=lib/resolv.rb
|
63
|
+
# - getname(address)
|
64
|
+
# -->
|
65
|
+
# Looks up the hostname of `address`.
|
66
|
+
#
|
67
|
+
def self.getname: (String address) -> String
|
68
|
+
|
69
|
+
# <!--
|
70
|
+
# rdoc-file=lib/resolv.rb
|
71
|
+
# - getnames(address)
|
72
|
+
# -->
|
73
|
+
# Looks up all hostnames for `address`.
|
74
|
+
#
|
75
|
+
def self.getnames: (String address) -> Array[String]
|
76
|
+
|
77
|
+
# <!--
|
78
|
+
# rdoc-file=lib/resolv.rb
|
79
|
+
# - each_address(name) { |name| ... }
|
80
|
+
# -->
|
81
|
+
# Iterates over all IP addresses for `name`.
|
82
|
+
#
|
83
|
+
def each_address: (String name) { (String) -> void } -> void
|
84
|
+
|
85
|
+
# <!--
|
86
|
+
# rdoc-file=lib/resolv.rb
|
87
|
+
# - each_name(address) { |name| ... }
|
88
|
+
# -->
|
89
|
+
# Iterates over all hostnames for `address`.
|
90
|
+
#
|
91
|
+
def each_name: (String name) { (String) -> void } -> void
|
92
|
+
|
93
|
+
# <!--
|
94
|
+
# rdoc-file=lib/resolv.rb
|
95
|
+
# - getaddress(name)
|
96
|
+
# -->
|
97
|
+
# Looks up the first IP address for `name`.
|
98
|
+
#
|
99
|
+
def getaddress: (String name) -> String
|
100
|
+
|
101
|
+
# <!--
|
102
|
+
# rdoc-file=lib/resolv.rb
|
103
|
+
# - getaddresses(name)
|
104
|
+
# -->
|
105
|
+
# Looks up all IP address for `name`.
|
106
|
+
#
|
107
|
+
def getaddresses: (String name) -> Array[String]
|
108
|
+
|
109
|
+
# <!--
|
110
|
+
# rdoc-file=lib/resolv.rb
|
111
|
+
# - getname(address)
|
112
|
+
# -->
|
113
|
+
# Looks up the hostname of `address`.
|
114
|
+
#
|
115
|
+
def getname: (String address) -> String
|
116
|
+
|
117
|
+
# <!--
|
118
|
+
# rdoc-file=lib/resolv.rb
|
119
|
+
# - getnames(address)
|
120
|
+
# -->
|
121
|
+
# Looks up all hostnames for `address`.
|
122
|
+
#
|
123
|
+
def getnames: (String address) -> Array[String]
|
124
|
+
|
125
|
+
private
|
126
|
+
|
127
|
+
# <!--
|
128
|
+
# rdoc-file=lib/resolv.rb
|
129
|
+
# - new(resolvers=(arg_not_set = true; nil), use_ipv6: (keyword_not_set = true; nil))
|
130
|
+
# -->
|
131
|
+
# Creates a new Resolv using `resolvers`.
|
132
|
+
#
|
133
|
+
# If `resolvers` is not given, a hash, or `nil`, uses a Hosts resolver and and a
|
134
|
+
# DNS resolver. If `resolvers` is a hash, uses the hash as configuration for
|
135
|
+
# the DNS resolver.
|
136
|
+
#
|
137
|
+
def initialize: (?Resolv::Hosts | Resolv::DNS resolvers) -> untyped
|
138
|
+
end
|
139
|
+
|
140
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
141
|
+
# Address Regexp to use for matching IP addresses.
|
142
|
+
#
|
143
|
+
Resolv::AddressRegex: Regexp
|
144
|
+
|
145
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
146
|
+
# Default resolver to use for Resolv class methods.
|
147
|
+
#
|
148
|
+
Resolv::DefaultResolver: Resolv
|
149
|
+
|
150
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
151
|
+
# Resolv::DNS is a DNS stub resolver.
|
152
|
+
#
|
153
|
+
# Information taken from the following places:
|
154
|
+
#
|
155
|
+
# * STD0013
|
156
|
+
# * RFC 1035
|
157
|
+
# * ftp://ftp.isi.edu/in-notes/iana/assignments/dns-parameters
|
158
|
+
# * etc.
|
159
|
+
#
|
160
|
+
class Resolv::DNS
|
161
|
+
type ip_address = Resolv::IPv4 | Resolv::IPv6
|
162
|
+
|
163
|
+
type dns_name = Name | String
|
164
|
+
|
165
|
+
def self.allocate_request_id: (String host, Integer port) -> Integer
|
166
|
+
|
167
|
+
def self.bind_random_port: (UDPSocket udpsock, ?String bind_host) -> void
|
168
|
+
|
169
|
+
def self.free_request_id: (String host, Integer port, Integer id) -> void
|
170
|
+
|
171
|
+
# <!--
|
172
|
+
# rdoc-file=lib/resolv.rb
|
173
|
+
# - open(*args) { |dns| ... }
|
174
|
+
# -->
|
175
|
+
# Creates a new DNS resolver. See Resolv::DNS.new for argument details.
|
176
|
+
#
|
177
|
+
# Yields the created DNS resolver to the block, if given, otherwise returns it.
|
178
|
+
#
|
179
|
+
def self.open: (*untyped args) -> instance
|
180
|
+
| (*untyped args) { (instance) -> void } -> void
|
181
|
+
|
182
|
+
def self.random: (Integer arg) -> (Integer | Float)
|
183
|
+
|
184
|
+
# <!--
|
185
|
+
# rdoc-file=lib/resolv.rb
|
186
|
+
# - close()
|
187
|
+
# -->
|
188
|
+
# Closes the DNS resolver.
|
189
|
+
#
|
190
|
+
def close: () -> untyped
|
191
|
+
|
192
|
+
# <!--
|
193
|
+
# rdoc-file=lib/resolv.rb
|
194
|
+
# - each_address(name) { |address| ... }
|
195
|
+
# -->
|
196
|
+
# Iterates over all IP addresses for `name` retrieved from the DNS resolver.
|
197
|
+
#
|
198
|
+
# `name` can be a Resolv::DNS::Name or a String. Retrieved addresses will be a
|
199
|
+
# Resolv::IPv4 or Resolv::IPv6
|
200
|
+
#
|
201
|
+
def each_address: (dns_name name) { (ip_address) -> void } -> void
|
202
|
+
|
203
|
+
# <!--
|
204
|
+
# rdoc-file=lib/resolv.rb
|
205
|
+
# - each_name(address) { |name| ... }
|
206
|
+
# -->
|
207
|
+
# Iterates over all hostnames for `address` retrieved from the DNS resolver.
|
208
|
+
#
|
209
|
+
# `address` must be a Resolv::IPv4, Resolv::IPv6 or a String. Retrieved names
|
210
|
+
# will be Resolv::DNS::Name instances.
|
211
|
+
#
|
212
|
+
def each_name: (ip_address | dns_name address) { (Resolv::DNS::Name) -> void } -> void
|
213
|
+
|
214
|
+
# <!--
|
215
|
+
# rdoc-file=lib/resolv.rb
|
216
|
+
# - each_resource(name, typeclass, &proc)
|
217
|
+
# -->
|
218
|
+
# Iterates over all `typeclass` DNS resources for `name`. See #getresource for
|
219
|
+
# argument details.
|
220
|
+
#
|
221
|
+
def each_resource: (dns_name name, singleton(Resolv::DNS::Query) typeclass) { (Resolv::DNS::Resource) -> void } -> void
|
222
|
+
|
223
|
+
def extract_resources: (Resolv::DNS::Message msg, dns_name name, singleton(Resolv::DNS::Query) typeclass) { (Resolv::DNS::Resource) -> void } -> void
|
224
|
+
|
225
|
+
# <!--
|
226
|
+
# rdoc-file=lib/resolv.rb
|
227
|
+
# - fetch_resource(name, typeclass) { |reply, reply_name| ... }
|
228
|
+
# -->
|
229
|
+
#
|
230
|
+
def fetch_resource: (Resolv::DNS::Name name, singleton(Resolv::DNS::Query) typeclass) { (Resolv::DNS::Message, Resolv::DNS::Name) -> void } -> void
|
231
|
+
|
232
|
+
# <!--
|
233
|
+
# rdoc-file=lib/resolv.rb
|
234
|
+
# - getaddress(name)
|
235
|
+
# -->
|
236
|
+
# Gets the IP address of `name` from the DNS resolver.
|
237
|
+
#
|
238
|
+
# `name` can be a Resolv::DNS::Name or a String. Retrieved address will be a
|
239
|
+
# Resolv::IPv4 or Resolv::IPv6
|
240
|
+
#
|
241
|
+
def getaddress: (dns_name name) -> ip_address
|
242
|
+
|
243
|
+
# <!--
|
244
|
+
# rdoc-file=lib/resolv.rb
|
245
|
+
# - getaddresses(name)
|
246
|
+
# -->
|
247
|
+
# Gets all IP addresses for `name` from the DNS resolver.
|
248
|
+
#
|
249
|
+
# `name` can be a Resolv::DNS::Name or a String. Retrieved addresses will be a
|
250
|
+
# Resolv::IPv4 or Resolv::IPv6
|
251
|
+
#
|
252
|
+
def getaddresses: (dns_name name) -> Array[ip_address]
|
253
|
+
|
254
|
+
# <!--
|
255
|
+
# rdoc-file=lib/resolv.rb
|
256
|
+
# - getname(address)
|
257
|
+
# -->
|
258
|
+
# Gets the hostname for `address` from the DNS resolver.
|
259
|
+
#
|
260
|
+
# `address` must be a Resolv::IPv4, Resolv::IPv6 or a String. Retrieved name
|
261
|
+
# will be a Resolv::DNS::Name.
|
262
|
+
#
|
263
|
+
def getname: (ip_address | dns_name address) -> Resolv::DNS::Name
|
264
|
+
|
265
|
+
# <!--
|
266
|
+
# rdoc-file=lib/resolv.rb
|
267
|
+
# - getnames(address)
|
268
|
+
# -->
|
269
|
+
# Gets all hostnames for `address` from the DNS resolver.
|
270
|
+
#
|
271
|
+
# `address` must be a Resolv::IPv4, Resolv::IPv6 or a String. Retrieved names
|
272
|
+
# will be Resolv::DNS::Name instances.
|
273
|
+
#
|
274
|
+
def getnames: (ip_address | dns_name address) -> Array[Resolv::DNS::Name]
|
275
|
+
|
276
|
+
# <!--
|
277
|
+
# rdoc-file=lib/resolv.rb
|
278
|
+
# - getresource(name, typeclass)
|
279
|
+
# -->
|
280
|
+
# Look up the `typeclass` DNS resource of `name`.
|
281
|
+
#
|
282
|
+
# `name` must be a Resolv::DNS::Name or a String.
|
283
|
+
#
|
284
|
+
# `typeclass` should be one of the following:
|
285
|
+
#
|
286
|
+
# * Resolv::DNS::Resource::IN::A
|
287
|
+
# * Resolv::DNS::Resource::IN::AAAA
|
288
|
+
# * Resolv::DNS::Resource::IN::ANY
|
289
|
+
# * Resolv::DNS::Resource::IN::CNAME
|
290
|
+
# * Resolv::DNS::Resource::IN::HINFO
|
291
|
+
# * Resolv::DNS::Resource::IN::MINFO
|
292
|
+
# * Resolv::DNS::Resource::IN::MX
|
293
|
+
# * Resolv::DNS::Resource::IN::NS
|
294
|
+
# * Resolv::DNS::Resource::IN::PTR
|
295
|
+
# * Resolv::DNS::Resource::IN::SOA
|
296
|
+
# * Resolv::DNS::Resource::IN::TXT
|
297
|
+
# * Resolv::DNS::Resource::IN::WKS
|
298
|
+
#
|
299
|
+
# Returned resource is represented as a Resolv::DNS::Resource instance, i.e.
|
300
|
+
# Resolv::DNS::Resource::IN::A.
|
301
|
+
#
|
302
|
+
def getresource: (dns_name name, singleton(Resolv::DNS::Query) typeclass) -> Resolv::DNS::Resource
|
303
|
+
|
304
|
+
# <!--
|
305
|
+
# rdoc-file=lib/resolv.rb
|
306
|
+
# - getresources(name, typeclass)
|
307
|
+
# -->
|
308
|
+
# Looks up all `typeclass` DNS resources for `name`. See #getresource for
|
309
|
+
# argument details.
|
310
|
+
#
|
311
|
+
def getresources: (dns_name name, singleton(Resolv::DNS::Query) typeclass) -> Array[Resolv::DNS::Resource]
|
312
|
+
|
313
|
+
def lazy_initialize: () -> untyped
|
314
|
+
|
315
|
+
def make_tcp_requester: (String host, Integer port) -> Requester::TCP
|
316
|
+
|
317
|
+
def make_udp_requester: () -> (Requester::ConnectedUDP | Requester::UnconnectedUDP)
|
318
|
+
|
319
|
+
# <!--
|
320
|
+
# rdoc-file=lib/resolv.rb
|
321
|
+
# - timeouts=(values)
|
322
|
+
# -->
|
323
|
+
# Sets the resolver timeouts. This may be a single positive number or an array
|
324
|
+
# of positive numbers representing timeouts in seconds. If an array is
|
325
|
+
# specified, a DNS request will retry and wait for each successive interval in
|
326
|
+
# the array until a successful response is received. Specifying `nil` reverts
|
327
|
+
# to the default timeouts:
|
328
|
+
# 5, second = 5 * 2 / nameserver_count, 2 * second, 4 * second
|
329
|
+
# : Example:
|
330
|
+
#
|
331
|
+
# dns.timeouts = 3
|
332
|
+
#
|
333
|
+
def timeouts=: (Integer | Float | Array[Integer | Float] values) -> void
|
334
|
+
|
335
|
+
private
|
336
|
+
|
337
|
+
# <!--
|
338
|
+
# rdoc-file=lib/resolv.rb
|
339
|
+
# - new(config_info=nil)
|
340
|
+
# -->
|
341
|
+
# Creates a new DNS resolver.
|
342
|
+
#
|
343
|
+
# `config_info` can be:
|
344
|
+
#
|
345
|
+
# nil
|
346
|
+
# : Uses /etc/resolv.conf.
|
347
|
+
#
|
348
|
+
# String
|
349
|
+
# : Path to a file using /etc/resolv.conf's format.
|
350
|
+
#
|
351
|
+
# Hash
|
352
|
+
# : Must contain :nameserver, :search and :ndots keys.
|
353
|
+
#
|
354
|
+
# :nameserver_port can be used to specify port number of nameserver address.
|
355
|
+
# :raise_timeout_errors can be used to raise timeout errors as exceptions
|
356
|
+
# instead of treating the same as an NXDOMAIN response.
|
357
|
+
#
|
358
|
+
# The value of :nameserver should be an address string or an array of address
|
359
|
+
# strings.
|
360
|
+
# * :nameserver => '8.8.8.8'
|
361
|
+
# * :nameserver => ['8.8.8.8', '8.8.4.4']
|
362
|
+
#
|
363
|
+
# The value of :nameserver_port should be an array of pair of nameserver address
|
364
|
+
# and port number.
|
365
|
+
# * :nameserver_port => [['8.8.8.8', 53], ['8.8.4.4', 53]]
|
366
|
+
#
|
367
|
+
# Example:
|
368
|
+
#
|
369
|
+
# Resolv::DNS.new(:nameserver => ['210.251.121.21'],
|
370
|
+
# :search => ['ruby-lang.org'],
|
371
|
+
# :ndots => 1)
|
372
|
+
#
|
373
|
+
def initialize: (?String | Hash[Symbol, untyped] config_info) -> untyped
|
374
|
+
|
375
|
+
def use_ipv6?: () -> untyped
|
376
|
+
end
|
377
|
+
|
378
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
379
|
+
# Default DNS Port
|
380
|
+
#
|
381
|
+
Resolv::DNS::Port: Integer
|
382
|
+
|
383
|
+
Resolv::DNS::RequestID: Hash[untyped, untyped]
|
384
|
+
|
385
|
+
Resolv::DNS::RequestIDMutex: Thread::Mutex
|
386
|
+
|
387
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
388
|
+
# Default DNS UDP packet size
|
389
|
+
#
|
390
|
+
Resolv::DNS::UDPSize: Integer
|
391
|
+
|
392
|
+
class Resolv::DNS::Config
|
393
|
+
def self.default_config_hash: (?String filename) -> Hash[Symbol, untyped]
|
394
|
+
|
395
|
+
def self.parse_resolv_conf: (String filename) -> Hash[Symbol, untyped]
|
396
|
+
|
397
|
+
def generate_candidates: (String name) -> Array[Resolv::DNS::Name]
|
398
|
+
|
399
|
+
def generate_timeouts: () -> Array[Integer | Float]
|
400
|
+
|
401
|
+
def lazy_initialize: () -> void
|
402
|
+
|
403
|
+
def nameserver_port: () -> Array[[ String, Integer ]]
|
404
|
+
|
405
|
+
def resolv: (String name) { (Resolv::DNS::Name, Integer, String, Integer) -> void } -> void
|
406
|
+
|
407
|
+
def single?: () -> [ String, Integer ]?
|
408
|
+
|
409
|
+
def timeouts=: (Integer | Float | Array[Integer | Float] values) -> void
|
410
|
+
|
411
|
+
private
|
412
|
+
|
413
|
+
def initialize: (?String | Hash[Symbol, untyped] config_info) -> untyped
|
414
|
+
end
|
415
|
+
|
416
|
+
Resolv::DNS::Config::InitialTimeout: Integer
|
417
|
+
|
418
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
419
|
+
# Indicates no such domain was found.
|
420
|
+
#
|
421
|
+
class Resolv::DNS::Config::NXDomain < Resolv::ResolvError
|
422
|
+
end
|
423
|
+
|
424
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
425
|
+
# Indicates some other unhandled resolver error was encountered.
|
426
|
+
#
|
427
|
+
class Resolv::DNS::Config::OtherResolvError < Resolv::ResolvError
|
428
|
+
end
|
429
|
+
|
430
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
431
|
+
# Indicates that the DNS response was unable to be decoded.
|
432
|
+
#
|
433
|
+
class Resolv::DNS::DecodeError < StandardError
|
434
|
+
end
|
435
|
+
|
436
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
437
|
+
# Indicates that the DNS request was unable to be encoded.
|
438
|
+
#
|
439
|
+
class Resolv::DNS::EncodeError < StandardError
|
440
|
+
end
|
441
|
+
|
442
|
+
module Resolv::DNS::Label
|
443
|
+
def self.split: (untyped arg) -> untyped
|
444
|
+
end
|
445
|
+
|
446
|
+
class Resolv::DNS::Label::Str
|
447
|
+
def eql?: (Resolv::DNS::Label::Str other) -> bool
|
448
|
+
|
449
|
+
def downcase: () -> String
|
450
|
+
|
451
|
+
alias == eql?
|
452
|
+
|
453
|
+
def hash: () -> Integer
|
454
|
+
|
455
|
+
def inspect: () -> String
|
456
|
+
|
457
|
+
def string: () -> String
|
458
|
+
|
459
|
+
def to_s: () -> String
|
460
|
+
|
461
|
+
private
|
462
|
+
|
463
|
+
def initialize: (String string) -> untyped
|
464
|
+
end
|
465
|
+
|
466
|
+
class Resolv::DNS::Message
|
467
|
+
def self.decode: (String m) -> instance
|
468
|
+
|
469
|
+
def ==: (instance other) -> bool
|
470
|
+
|
471
|
+
def aa: () -> Integer
|
472
|
+
|
473
|
+
def aa=: (Integer) -> void
|
474
|
+
|
475
|
+
def add_additional: (String name, Integer ttl, Resolv::DNS::Resource data) -> void
|
476
|
+
|
477
|
+
def add_answer: (String name, Integer ttl, Resolv::DNS::Resource data) -> void
|
478
|
+
|
479
|
+
def add_authority: (String name, Integer ttl, Resolv::DNS::Resource data) -> void
|
480
|
+
|
481
|
+
def add_question: (String name, singleton(Resolv::DNS::Query) typeclass) -> void
|
482
|
+
|
483
|
+
def additional: () -> Array[[ Resolv::DNS::Name, Integer, Resolv::DNS::Resource ]]
|
484
|
+
|
485
|
+
def answer: () -> Array[[ Resolv::DNS::Name, Integer, Resolv::DNS::Resource ]]
|
486
|
+
|
487
|
+
def authority: () -> Array[[ Resolv::DNS::Name, Integer, Resolv::DNS::Resource ]]
|
488
|
+
|
489
|
+
def each_additional: () { (Resolv::DNS::Name, Integer, Resolv::DNS::Resource) -> void } -> void
|
490
|
+
|
491
|
+
def each_answer: () { (Resolv::DNS::Name, Integer, Resolv::DNS::Resource) -> void } -> void
|
492
|
+
|
493
|
+
def each_authority: () { (Resolv::DNS::Name, Integer, Resolv::DNS::Resource) -> void } -> void
|
494
|
+
|
495
|
+
def each_question: () { (Resolv::DNS::Name, singleton(Resolv::DNS::Query)) -> void } -> void
|
496
|
+
|
497
|
+
def each_resource: () { (Resolv::DNS::Name, Integer, Resolv::DNS::Resource) -> void } -> void
|
498
|
+
|
499
|
+
def encode: () -> String
|
500
|
+
|
501
|
+
def id: () -> Integer
|
502
|
+
|
503
|
+
def id=: (Integer) -> void
|
504
|
+
|
505
|
+
def opcode: () -> Integer
|
506
|
+
|
507
|
+
def opcode=: (Integer) -> void
|
508
|
+
|
509
|
+
def qr: () -> Integer
|
510
|
+
|
511
|
+
def qr=: (Integer) -> void
|
512
|
+
|
513
|
+
def question: () -> Array[[ Resolv::DNS::Name, singleton(Resolv::DNS::Resource) ]]
|
514
|
+
|
515
|
+
def ra: () -> Integer
|
516
|
+
|
517
|
+
def ra=: (Integer) -> void
|
518
|
+
|
519
|
+
def rcode: () -> Integer
|
520
|
+
|
521
|
+
def rcode=: (Integer) -> void
|
522
|
+
|
523
|
+
def rd: () -> Integer
|
524
|
+
|
525
|
+
def rd=: (Integer) -> void
|
526
|
+
|
527
|
+
def tc: () -> Integer
|
528
|
+
|
529
|
+
def tc=: (Integer) -> void
|
530
|
+
|
531
|
+
private
|
532
|
+
|
533
|
+
def initialize: (?Integer id) -> untyped
|
534
|
+
end
|
535
|
+
|
536
|
+
class Resolv::DNS::Message::MessageDecoder
|
537
|
+
def get_bytes: (?Integer len) -> String
|
538
|
+
|
539
|
+
def get_label: () -> Resolv::DNS::Label::Str
|
540
|
+
|
541
|
+
def get_labels: () -> Array[Resolv::DNS::Label::Str]
|
542
|
+
|
543
|
+
def get_length16: () { (Integer) -> Integer } -> Integer
|
544
|
+
|
545
|
+
def get_name: () -> Resolv::DNS::Name
|
546
|
+
|
547
|
+
def get_question: () -> Resolv::DNS::Query
|
548
|
+
|
549
|
+
def get_rr: () -> [ Resolv::DNS::Name, Integer, Resolv::DNS::Resource ]
|
550
|
+
|
551
|
+
def get_string: () -> String
|
552
|
+
|
553
|
+
def get_string_list: () -> Array[String]
|
554
|
+
|
555
|
+
def get_unpack: (String template) -> Array[untyped]
|
556
|
+
|
557
|
+
def inspect: () -> String
|
558
|
+
|
559
|
+
private
|
560
|
+
|
561
|
+
def initialize: (String data) { (instance) -> void } -> untyped
|
562
|
+
end
|
563
|
+
|
564
|
+
class Resolv::DNS::Message::MessageEncoder
|
565
|
+
def put_bytes: (string d) -> void
|
566
|
+
|
567
|
+
def put_label: (_ToS d) -> void
|
568
|
+
|
569
|
+
def put_labels: (Array[_ToS] d) -> void
|
570
|
+
|
571
|
+
def put_length16: () { () -> void } -> void
|
572
|
+
|
573
|
+
def put_name: (Resolv::DNS::Name d) -> void
|
574
|
+
|
575
|
+
def put_pack: (String template, *untyped d) -> void
|
576
|
+
|
577
|
+
def put_string: (String d) -> void
|
578
|
+
|
579
|
+
def put_string_list: (_Each[String] ds) -> void
|
580
|
+
|
581
|
+
def to_s: () -> untyped
|
582
|
+
|
583
|
+
private
|
584
|
+
|
585
|
+
def initialize: () -> untyped
|
586
|
+
end
|
587
|
+
|
588
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
589
|
+
# A representation of a DNS name.
|
590
|
+
#
|
591
|
+
class Resolv::DNS::Name
|
592
|
+
# <!--
|
593
|
+
# rdoc-file=lib/resolv.rb
|
594
|
+
# - create(arg)
|
595
|
+
# -->
|
596
|
+
# Creates a new DNS name from `arg`. `arg` can be:
|
597
|
+
#
|
598
|
+
# Name
|
599
|
+
# : returns `arg`.
|
600
|
+
#
|
601
|
+
# String
|
602
|
+
# : Creates a new Name.
|
603
|
+
#
|
604
|
+
def self.create: (Resolv::DNS::dns_name arg) -> untyped
|
605
|
+
|
606
|
+
def ==: (instance other) -> bool
|
607
|
+
|
608
|
+
def []: (Integer i) -> Resolv::DNS::Label::Str?
|
609
|
+
|
610
|
+
# <!--
|
611
|
+
# rdoc-file=lib/resolv.rb
|
612
|
+
# - absolute?()
|
613
|
+
# -->
|
614
|
+
# True if this name is absolute.
|
615
|
+
#
|
616
|
+
def absolute?: () -> bool
|
617
|
+
|
618
|
+
alias eql? ==
|
619
|
+
|
620
|
+
def hash: () -> Integer
|
621
|
+
|
622
|
+
def inspect: () -> String
|
623
|
+
|
624
|
+
def length: () -> Integer
|
625
|
+
|
626
|
+
# <!--
|
627
|
+
# rdoc-file=lib/resolv.rb
|
628
|
+
# - subdomain_of?(other)
|
629
|
+
# -->
|
630
|
+
# Returns true if `other` is a subdomain.
|
631
|
+
#
|
632
|
+
# Example:
|
633
|
+
#
|
634
|
+
# domain = Resolv::DNS::Name.create("y.z")
|
635
|
+
# p Resolv::DNS::Name.create("w.x.y.z").subdomain_of?(domain) #=> true
|
636
|
+
# p Resolv::DNS::Name.create("x.y.z").subdomain_of?(domain) #=> true
|
637
|
+
# p Resolv::DNS::Name.create("y.z").subdomain_of?(domain) #=> false
|
638
|
+
# p Resolv::DNS::Name.create("z").subdomain_of?(domain) #=> false
|
639
|
+
# p Resolv::DNS::Name.create("x.y.z.").subdomain_of?(domain) #=> false
|
640
|
+
# p Resolv::DNS::Name.create("w.z").subdomain_of?(domain) #=> false
|
641
|
+
#
|
642
|
+
def subdomain_of?: (instance other) -> bool
|
643
|
+
|
644
|
+
def to_a: () -> Array[Resolv::DNS::Label::Str]
|
645
|
+
|
646
|
+
# <!--
|
647
|
+
# rdoc-file=lib/resolv.rb
|
648
|
+
# - to_s()
|
649
|
+
# -->
|
650
|
+
# returns the domain name as a string.
|
651
|
+
#
|
652
|
+
# The domain name doesn't have a trailing dot even if the name object is
|
653
|
+
# absolute.
|
654
|
+
#
|
655
|
+
# Example:
|
656
|
+
#
|
657
|
+
# p Resolv::DNS::Name.create("x.y.z.").to_s #=> "x.y.z"
|
658
|
+
# p Resolv::DNS::Name.create("x.y.z").to_s #=> "x.y.z"
|
659
|
+
#
|
660
|
+
def to_s: () -> untyped
|
661
|
+
|
662
|
+
private
|
663
|
+
|
664
|
+
def initialize: (Array[Resolv::DNS::Label::Str] labels, ?bool absolute) -> untyped
|
665
|
+
end
|
666
|
+
|
667
|
+
module Resolv::DNS::OpCode
|
668
|
+
end
|
669
|
+
|
670
|
+
Resolv::DNS::OpCode::IQuery: Integer
|
671
|
+
|
672
|
+
Resolv::DNS::OpCode::Notify: Integer
|
673
|
+
|
674
|
+
Resolv::DNS::OpCode::Query: Integer
|
675
|
+
|
676
|
+
Resolv::DNS::OpCode::Status: Integer
|
677
|
+
|
678
|
+
Resolv::DNS::OpCode::Update: Integer
|
679
|
+
|
680
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
681
|
+
# A DNS query abstract class.
|
682
|
+
#
|
683
|
+
class Resolv::DNS::Query
|
684
|
+
def self.decode_rdata: (Resolv::DNS::Message::MessageDecoder msg) -> instance
|
685
|
+
|
686
|
+
def encode_rdata: (Resolv::DNS::Message::MessageEncoder msg) -> void
|
687
|
+
end
|
688
|
+
|
689
|
+
module Resolv::DNS::RCode
|
690
|
+
end
|
691
|
+
|
692
|
+
Resolv::DNS::RCode::BADALG: Integer
|
693
|
+
|
694
|
+
Resolv::DNS::RCode::BADKEY: Integer
|
695
|
+
|
696
|
+
Resolv::DNS::RCode::BADMODE: Integer
|
697
|
+
|
698
|
+
Resolv::DNS::RCode::BADNAME: Integer
|
699
|
+
|
700
|
+
Resolv::DNS::RCode::BADSIG: Integer
|
701
|
+
|
702
|
+
Resolv::DNS::RCode::BADTIME: Integer
|
703
|
+
|
704
|
+
Resolv::DNS::RCode::BADVERS: Integer
|
705
|
+
|
706
|
+
Resolv::DNS::RCode::FormErr: Integer
|
707
|
+
|
708
|
+
Resolv::DNS::RCode::NXDomain: Integer
|
709
|
+
|
710
|
+
Resolv::DNS::RCode::NXRRSet: Integer
|
711
|
+
|
712
|
+
Resolv::DNS::RCode::NoError: Integer
|
713
|
+
|
714
|
+
Resolv::DNS::RCode::NotAuth: Integer
|
715
|
+
|
716
|
+
Resolv::DNS::RCode::NotImp: Integer
|
717
|
+
|
718
|
+
Resolv::DNS::RCode::NotZone: Integer
|
719
|
+
|
720
|
+
Resolv::DNS::RCode::Refused: Integer
|
721
|
+
|
722
|
+
Resolv::DNS::RCode::ServFail: Integer
|
723
|
+
|
724
|
+
Resolv::DNS::RCode::YXDomain: Integer
|
725
|
+
|
726
|
+
Resolv::DNS::RCode::YXRRSet: Integer
|
727
|
+
|
728
|
+
class Resolv::DNS::Requester
|
729
|
+
def close: () -> void
|
730
|
+
|
731
|
+
def request: (Resolv::DNS::Requester::Sender sender, Numeric tout) -> [ Resolv::DNS::Message, String ]
|
732
|
+
|
733
|
+
def sender_for: (String addr, Resolv::DNS::Message msg) -> Resolv::DNS::Requester::Sender
|
734
|
+
|
735
|
+
private
|
736
|
+
|
737
|
+
def initialize: () -> untyped
|
738
|
+
end
|
739
|
+
|
740
|
+
class Resolv::DNS::Requester::ConnectedUDP < Resolv::DNS::Requester
|
741
|
+
def close: () -> void
|
742
|
+
|
743
|
+
def lazy_initialize: () -> void
|
744
|
+
|
745
|
+
def recv_reply: (Array[UDPSocket] readable_socks) -> [ String, String ]
|
746
|
+
|
747
|
+
def sender: (Resolv::DNS::Message msg, String data, ?String host, ?Integer port) -> Resolv::DNS::Requester::Sender
|
748
|
+
|
749
|
+
private
|
750
|
+
|
751
|
+
def initialize: (String host, ?Integer port) -> untyped
|
752
|
+
end
|
753
|
+
|
754
|
+
class Resolv::DNS::Requester::ConnectedUDP::Sender < Resolv::DNS::Requester::Sender
|
755
|
+
def data: () -> String
|
756
|
+
|
757
|
+
def send: () -> void
|
758
|
+
end
|
759
|
+
|
760
|
+
class Resolv::DNS::Requester::MDNSOneShot < Resolv::DNS::Requester::UnconnectedUDP
|
761
|
+
def sender: (Resolv::DNS::Message msg, String data, ?String host, ?Integer port) -> Resolv::DNS::Requester::Sender
|
762
|
+
|
763
|
+
def recv_reply: (Array[UDPSocket] readable_socks) -> [ String, String ]
|
764
|
+
end
|
765
|
+
|
766
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
767
|
+
# Indicates a problem with the DNS request.
|
768
|
+
#
|
769
|
+
class Resolv::DNS::Requester::RequestError < StandardError
|
770
|
+
end
|
771
|
+
|
772
|
+
class Resolv::DNS::Requester::Sender
|
773
|
+
private
|
774
|
+
|
775
|
+
def initialize: (Resolv::DNS::Message msg, String data, Socket sock) -> untyped
|
776
|
+
end
|
777
|
+
|
778
|
+
class Resolv::DNS::Requester::TCP < Resolv::DNS::Requester
|
779
|
+
def close: () -> untyped
|
780
|
+
|
781
|
+
def recv_reply: (Array[TCPSocket] readable_socks) -> [ String, String ]
|
782
|
+
|
783
|
+
def sender: (Resolv::DNS::Message msg, String data, ?String host, ?Integer port) -> Resolv::DNS::Requester::Sender
|
784
|
+
|
785
|
+
private
|
786
|
+
|
787
|
+
def initialize: (String host, ?Integer port) -> untyped
|
788
|
+
end
|
789
|
+
|
790
|
+
class Resolv::DNS::Requester::TCP::Sender < Resolv::DNS::Requester::Sender
|
791
|
+
def data: () -> String
|
792
|
+
|
793
|
+
def send: () -> void
|
794
|
+
end
|
795
|
+
|
796
|
+
class Resolv::DNS::Requester::UnconnectedUDP < Resolv::DNS::Requester
|
797
|
+
def close: () -> void
|
798
|
+
|
799
|
+
def lazy_initialize: () -> void
|
800
|
+
|
801
|
+
def recv_reply: (Array[UDPSocket] readable_socks) -> [ String, String ]
|
802
|
+
|
803
|
+
def sender: (Resolv::DNS::Message msg, String data, ?String host, ?Integer port) -> Resolv::DNS::Requester::Sender
|
804
|
+
|
805
|
+
private
|
806
|
+
|
807
|
+
def initialize: (*[ String, Integer ] nameserver_port) -> untyped
|
808
|
+
end
|
809
|
+
|
810
|
+
class Resolv::DNS::Requester::UnconnectedUDP::Sender < Resolv::DNS::Requester::Sender
|
811
|
+
def data: () -> String
|
812
|
+
|
813
|
+
def send: () -> void
|
814
|
+
|
815
|
+
private
|
816
|
+
|
817
|
+
def initialize: (Resolv::DNS::Message msg, String data, UDPSocket sock, String host, Integer port) -> untyped
|
818
|
+
end
|
819
|
+
|
820
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
821
|
+
# A DNS resource abstract class.
|
822
|
+
#
|
823
|
+
class Resolv::DNS::Resource < Resolv::DNS::Query
|
824
|
+
def self.decode_rdata: (Resolv::DNS::Message::MessageDecoder msg) -> instance
|
825
|
+
|
826
|
+
def self.get_class: (Integer type_value, Integer class_value) -> self
|
827
|
+
|
828
|
+
def eql?: (Resolv::DNS::Resource other) -> bool
|
829
|
+
|
830
|
+
def encode_rdata: (Resolv::DNS::Message::MessageEncoder msg) -> void
|
831
|
+
|
832
|
+
alias == eql?
|
833
|
+
|
834
|
+
def hash: () -> Integer
|
835
|
+
|
836
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
837
|
+
# Remaining Time To Live for this Resource.
|
838
|
+
#
|
839
|
+
def ttl: () -> Integer
|
840
|
+
end
|
841
|
+
|
842
|
+
Resolv::DNS::Resource::ClassHash: Hash[[ Integer, Integer ], singleton(Resolv::DNS::Resource)]
|
843
|
+
|
844
|
+
Resolv::DNS::Resource::ClassInsensitiveTypes: Array[singleton(Resolv::DNS::Resource)]
|
845
|
+
|
846
|
+
Resolv::DNS::Resource::ClassValue: Integer?
|
847
|
+
|
848
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
849
|
+
# A Query type requesting any RR.
|
850
|
+
#
|
851
|
+
class Resolv::DNS::Resource::ANY < Resolv::DNS::Query
|
852
|
+
end
|
853
|
+
|
854
|
+
Resolv::DNS::Resource::ANY::TypeValue: Integer
|
855
|
+
|
856
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
857
|
+
# The canonical name for an alias.
|
858
|
+
#
|
859
|
+
class Resolv::DNS::Resource::CNAME < Resolv::DNS::Resource::DomainName
|
860
|
+
end
|
861
|
+
|
862
|
+
Resolv::DNS::Resource::CNAME::TypeValue: Integer
|
863
|
+
|
864
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
865
|
+
# Domain Name resource abstract class.
|
866
|
+
#
|
867
|
+
class Resolv::DNS::Resource::DomainName < Resolv::DNS::Resource
|
868
|
+
def self.decode_rdata: (Resolv::DNS::Message::MessageDecoder msg) -> instance
|
869
|
+
|
870
|
+
def encode_rdata: (Resolv::DNS::Message::MessageEncoder msg) -> void
|
871
|
+
|
872
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
873
|
+
# The name of this DomainName.
|
874
|
+
#
|
875
|
+
def name: () -> String
|
876
|
+
|
877
|
+
private
|
878
|
+
|
879
|
+
# <!--
|
880
|
+
# rdoc-file=lib/resolv.rb
|
881
|
+
# - new(name)
|
882
|
+
# -->
|
883
|
+
# Creates a new DomainName from `name`.
|
884
|
+
#
|
885
|
+
def initialize: (String name) -> untyped
|
886
|
+
end
|
887
|
+
|
888
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
889
|
+
# A generic resource abstract class.
|
890
|
+
#
|
891
|
+
class Resolv::DNS::Resource::Generic < Resolv::DNS::Resource
|
892
|
+
def self.create: (Integer type_value, Integer class_value) -> Class
|
893
|
+
|
894
|
+
def self.decode_rdata: (Resolv::DNS::Message::MessageDecoder msg) -> instance
|
895
|
+
|
896
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
897
|
+
# Data for this generic resource.
|
898
|
+
#
|
899
|
+
def data: () -> String
|
900
|
+
|
901
|
+
def encode_rdata: (Resolv::DNS::Message::MessageEncoder msg) -> void
|
902
|
+
|
903
|
+
private
|
904
|
+
|
905
|
+
# <!--
|
906
|
+
# rdoc-file=lib/resolv.rb
|
907
|
+
# - new(data)
|
908
|
+
# -->
|
909
|
+
# Creates a new generic resource.
|
910
|
+
#
|
911
|
+
def initialize: (String data) -> untyped
|
912
|
+
end
|
913
|
+
|
914
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
915
|
+
# Host Information resource.
|
916
|
+
#
|
917
|
+
class Resolv::DNS::Resource::HINFO < Resolv::DNS::Resource
|
918
|
+
def self.decode_rdata: (Resolv::DNS::Message::MessageDecoder msg) -> instance
|
919
|
+
|
920
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
921
|
+
# CPU architecture for this resource.
|
922
|
+
#
|
923
|
+
def cpu: () -> String
|
924
|
+
|
925
|
+
def encode_rdata: (Resolv::DNS::Message::MessageEncoder msg) -> void
|
926
|
+
|
927
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
928
|
+
# Operating system for this resource.
|
929
|
+
#
|
930
|
+
def os: () -> String
|
931
|
+
|
932
|
+
private
|
933
|
+
|
934
|
+
# <!--
|
935
|
+
# rdoc-file=lib/resolv.rb
|
936
|
+
# - new(cpu, os)
|
937
|
+
# -->
|
938
|
+
# Creates a new HINFO running `os` on `cpu`.
|
939
|
+
#
|
940
|
+
def initialize: (String cpu, String os) -> untyped
|
941
|
+
end
|
942
|
+
|
943
|
+
Resolv::DNS::Resource::HINFO::TypeValue: Integer
|
944
|
+
|
945
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
946
|
+
# module IN contains ARPA Internet specific RRs.
|
947
|
+
#
|
948
|
+
module Resolv::DNS::Resource::IN
|
949
|
+
end
|
950
|
+
|
951
|
+
Resolv::DNS::Resource::IN::ClassValue: Integer
|
952
|
+
|
953
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
954
|
+
# IPv4 Address resource
|
955
|
+
#
|
956
|
+
class Resolv::DNS::Resource::IN::A < Resolv::DNS::Resource
|
957
|
+
def self.decode_rdata: (Resolv::DNS::Message::MessageDecoder msg) -> instance
|
958
|
+
|
959
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
960
|
+
# The Resolv::IPv4 address for this A.
|
961
|
+
#
|
962
|
+
def address: () -> Resolv::IPv4
|
963
|
+
|
964
|
+
def encode_rdata: (Resolv::DNS::Message::MessageEncoder msg) -> void
|
965
|
+
|
966
|
+
private
|
967
|
+
|
968
|
+
# <!--
|
969
|
+
# rdoc-file=lib/resolv.rb
|
970
|
+
# - new(address)
|
971
|
+
# -->
|
972
|
+
# Creates a new A for `address`.
|
973
|
+
#
|
974
|
+
def initialize: (String | Resolv::IPv4 address) -> untyped
|
975
|
+
end
|
976
|
+
|
977
|
+
Resolv::DNS::Resource::IN::A::ClassValue: Integer
|
978
|
+
|
979
|
+
Resolv::DNS::Resource::IN::A::TypeValue: Integer
|
980
|
+
|
981
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
982
|
+
# An IPv6 address record.
|
983
|
+
#
|
984
|
+
class Resolv::DNS::Resource::IN::AAAA < Resolv::DNS::Resource
|
985
|
+
def self.decode_rdata: (Resolv::DNS::Message::MessageDecoder msg) -> instance
|
986
|
+
|
987
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
988
|
+
# The Resolv::IPv6 address for this AAAA.
|
989
|
+
#
|
990
|
+
def address: () -> Resolv::IPv6
|
991
|
+
|
992
|
+
def encode_rdata: (Resolv::DNS::Message::MessageEncoder msg) -> void
|
993
|
+
|
994
|
+
private
|
995
|
+
|
996
|
+
# <!--
|
997
|
+
# rdoc-file=lib/resolv.rb
|
998
|
+
# - new(address)
|
999
|
+
# -->
|
1000
|
+
# Creates a new AAAA for `address`.
|
1001
|
+
#
|
1002
|
+
def initialize: (String | Resolv::IPv6 address) -> untyped
|
1003
|
+
end
|
1004
|
+
|
1005
|
+
Resolv::DNS::Resource::IN::AAAA::ClassValue: Integer
|
1006
|
+
|
1007
|
+
Resolv::DNS::Resource::IN::AAAA::TypeValue: Integer
|
1008
|
+
|
1009
|
+
class Resolv::DNS::Resource::IN::ANY < Resolv::DNS::Resource::ANY
|
1010
|
+
end
|
1011
|
+
|
1012
|
+
Resolv::DNS::Resource::IN::ANY::ClassValue: Integer
|
1013
|
+
|
1014
|
+
Resolv::DNS::Resource::IN::ANY::TypeValue: Integer
|
1015
|
+
|
1016
|
+
class Resolv::DNS::Resource::IN::CNAME < Resolv::DNS::Resource::CNAME
|
1017
|
+
end
|
1018
|
+
|
1019
|
+
Resolv::DNS::Resource::IN::CNAME::ClassValue: Integer
|
1020
|
+
|
1021
|
+
Resolv::DNS::Resource::IN::CNAME::TypeValue: Integer
|
1022
|
+
|
1023
|
+
class Resolv::DNS::Resource::IN::HINFO < Resolv::DNS::Resource::HINFO
|
1024
|
+
end
|
1025
|
+
|
1026
|
+
Resolv::DNS::Resource::IN::HINFO::ClassValue: Integer
|
1027
|
+
|
1028
|
+
Resolv::DNS::Resource::IN::HINFO::TypeValue: Integer
|
1029
|
+
|
1030
|
+
class Resolv::DNS::Resource::IN::LOC < Resolv::DNS::Resource::LOC
|
1031
|
+
end
|
1032
|
+
|
1033
|
+
Resolv::DNS::Resource::IN::LOC::ClassValue: Integer
|
1034
|
+
|
1035
|
+
Resolv::DNS::Resource::IN::LOC::TypeValue: Integer
|
1036
|
+
|
1037
|
+
class Resolv::DNS::Resource::IN::MINFO < Resolv::DNS::Resource::MINFO
|
1038
|
+
end
|
1039
|
+
|
1040
|
+
Resolv::DNS::Resource::IN::MINFO::ClassValue: Integer
|
1041
|
+
|
1042
|
+
Resolv::DNS::Resource::IN::MINFO::TypeValue: Integer
|
1043
|
+
|
1044
|
+
class Resolv::DNS::Resource::IN::MX < Resolv::DNS::Resource::MX
|
1045
|
+
end
|
1046
|
+
|
1047
|
+
Resolv::DNS::Resource::IN::MX::ClassValue: Integer
|
1048
|
+
|
1049
|
+
Resolv::DNS::Resource::IN::MX::TypeValue: Integer
|
1050
|
+
|
1051
|
+
class Resolv::DNS::Resource::IN::NS < Resolv::DNS::Resource::NS
|
1052
|
+
end
|
1053
|
+
|
1054
|
+
Resolv::DNS::Resource::IN::NS::ClassValue: Integer
|
1055
|
+
|
1056
|
+
Resolv::DNS::Resource::IN::NS::TypeValue: Integer
|
1057
|
+
|
1058
|
+
class Resolv::DNS::Resource::IN::PTR < Resolv::DNS::Resource::PTR
|
1059
|
+
end
|
1060
|
+
|
1061
|
+
Resolv::DNS::Resource::IN::PTR::ClassValue: Integer
|
1062
|
+
|
1063
|
+
Resolv::DNS::Resource::IN::PTR::TypeValue: Integer
|
1064
|
+
|
1065
|
+
class Resolv::DNS::Resource::IN::SOA < Resolv::DNS::Resource::SOA
|
1066
|
+
end
|
1067
|
+
|
1068
|
+
Resolv::DNS::Resource::IN::SOA::ClassValue: Integer
|
1069
|
+
|
1070
|
+
Resolv::DNS::Resource::IN::SOA::TypeValue: Integer
|
1071
|
+
|
1072
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1073
|
+
# SRV resource record defined in RFC 2782
|
1074
|
+
#
|
1075
|
+
# These records identify the hostname and port that a service is available at.
|
1076
|
+
#
|
1077
|
+
class Resolv::DNS::Resource::IN::SRV < Resolv::DNS::Resource
|
1078
|
+
def self.decode_rdata: (Resolv::DNS::Message::MessageDecoder msg) -> instance
|
1079
|
+
|
1080
|
+
def encode_rdata: (Resolv::DNS::Message::MessageEncoder msg) -> void
|
1081
|
+
|
1082
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1083
|
+
# The port on this target host of this service.
|
1084
|
+
#
|
1085
|
+
# The range is 0-65535.
|
1086
|
+
#
|
1087
|
+
def port: () -> Integer
|
1088
|
+
|
1089
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1090
|
+
# The priority of this target host.
|
1091
|
+
#
|
1092
|
+
# A client MUST attempt to contact the target host with the lowest-numbered
|
1093
|
+
# priority it can reach; target hosts with the same priority SHOULD be tried in
|
1094
|
+
# an order defined by the weight field. The range is 0-65535. Note that it is
|
1095
|
+
# not widely implemented and should be set to zero.
|
1096
|
+
#
|
1097
|
+
def priority: () -> Integer
|
1098
|
+
|
1099
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1100
|
+
# The domain name of the target host.
|
1101
|
+
#
|
1102
|
+
# A target of "." means that the service is decidedly not available at this
|
1103
|
+
# domain.
|
1104
|
+
#
|
1105
|
+
def target: () -> String
|
1106
|
+
|
1107
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1108
|
+
# A server selection mechanism.
|
1109
|
+
#
|
1110
|
+
# The weight field specifies a relative weight for entries with the same
|
1111
|
+
# priority. Larger weights SHOULD be given a proportionately higher probability
|
1112
|
+
# of being selected. The range of this number is 0-65535. Domain administrators
|
1113
|
+
# SHOULD use Weight 0 when there isn't any server selection to do, to make the
|
1114
|
+
# RR easier to read for humans (less noisy). Note that it is not widely
|
1115
|
+
# implemented and should be set to zero.
|
1116
|
+
#
|
1117
|
+
def weight: () -> Integer
|
1118
|
+
|
1119
|
+
private
|
1120
|
+
|
1121
|
+
# <!--
|
1122
|
+
# rdoc-file=lib/resolv.rb
|
1123
|
+
# - new(priority, weight, port, target)
|
1124
|
+
# -->
|
1125
|
+
# Create a SRV resource record.
|
1126
|
+
#
|
1127
|
+
# See the documentation for #priority, #weight, #port and #target for
|
1128
|
+
# `priority`, `weight`, +port and `target` respectively.
|
1129
|
+
#
|
1130
|
+
def initialize: (Integer priority, Integer weight, Integer port, String target) -> untyped
|
1131
|
+
end
|
1132
|
+
|
1133
|
+
Resolv::DNS::Resource::IN::SRV::ClassValue: Integer
|
1134
|
+
|
1135
|
+
Resolv::DNS::Resource::IN::SRV::TypeValue: Integer
|
1136
|
+
|
1137
|
+
class Resolv::DNS::Resource::IN::TXT < Resolv::DNS::Resource::TXT
|
1138
|
+
end
|
1139
|
+
|
1140
|
+
Resolv::DNS::Resource::IN::TXT::ClassValue: Integer
|
1141
|
+
|
1142
|
+
Resolv::DNS::Resource::IN::TXT::TypeValue: Integer
|
1143
|
+
|
1144
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1145
|
+
# Well Known Service resource.
|
1146
|
+
#
|
1147
|
+
class Resolv::DNS::Resource::IN::WKS < Resolv::DNS::Resource
|
1148
|
+
def self.decode_rdata: (Resolv::DNS::Message::MessageDecoder msg) -> instance
|
1149
|
+
|
1150
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1151
|
+
# The host these services run on.
|
1152
|
+
#
|
1153
|
+
def address: () -> Resolv::IPv4
|
1154
|
+
|
1155
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1156
|
+
# A bit map of enabled services on this host.
|
1157
|
+
#
|
1158
|
+
# If protocol is 6 (TCP) then the 26th bit corresponds to the SMTP service (port
|
1159
|
+
# 25). If this bit is set, then an SMTP server should be listening on TCP port
|
1160
|
+
# 25; if zero, SMTP service is not supported.
|
1161
|
+
#
|
1162
|
+
def bitmap: () -> Integer
|
1163
|
+
|
1164
|
+
def encode_rdata: (Resolv::DNS::Message::MessageEncoder msg) -> void
|
1165
|
+
|
1166
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1167
|
+
# IP protocol number for these services.
|
1168
|
+
#
|
1169
|
+
def protocol: () -> Integer
|
1170
|
+
|
1171
|
+
private
|
1172
|
+
|
1173
|
+
# <!--
|
1174
|
+
# rdoc-file=lib/resolv.rb
|
1175
|
+
# - new(address, protocol, bitmap)
|
1176
|
+
# -->
|
1177
|
+
#
|
1178
|
+
def initialize: (String | Resolv::IPv4 address, Integer protocol, Integer bitmap) -> untyped
|
1179
|
+
end
|
1180
|
+
|
1181
|
+
Resolv::DNS::Resource::IN::WKS::ClassValue: Integer
|
1182
|
+
|
1183
|
+
Resolv::DNS::Resource::IN::WKS::TypeValue: Integer
|
1184
|
+
|
1185
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1186
|
+
# Location resource
|
1187
|
+
#
|
1188
|
+
class Resolv::DNS::Resource::LOC < Resolv::DNS::Resource
|
1189
|
+
def self.decode_rdata: (Resolv::DNS::Message::MessageDecoder msg) -> instance
|
1190
|
+
|
1191
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1192
|
+
# The altitude of the LOC above a reference sphere whose surface sits 100km
|
1193
|
+
# below the WGS84 spheroid in centimeters as an unsigned 32bit integer
|
1194
|
+
#
|
1195
|
+
def altitude: () -> Integer
|
1196
|
+
|
1197
|
+
def encode_rdata: (Resolv::DNS::Message::MessageEncoder msg) -> void
|
1198
|
+
|
1199
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1200
|
+
# The horizontal precision using ssize type values in meters using scientific
|
1201
|
+
# notation as 2 integers of XeY for precision use value/2 e.g. 2m = +/-1m
|
1202
|
+
#
|
1203
|
+
def hprecision: () -> Integer
|
1204
|
+
|
1205
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1206
|
+
# The latitude for this LOC where 2**31 is the equator in thousandths of an arc
|
1207
|
+
# second as an unsigned 32bit integer
|
1208
|
+
#
|
1209
|
+
def latitude: () -> Integer
|
1210
|
+
|
1211
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1212
|
+
# The longitude for this LOC where 2**31 is the prime meridian in thousandths of
|
1213
|
+
# an arc second as an unsigned 32bit integer
|
1214
|
+
#
|
1215
|
+
def longitude: () -> Integer
|
1216
|
+
|
1217
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1218
|
+
# The spherical size of this LOC in meters using scientific notation as 2
|
1219
|
+
# integers of XeY
|
1220
|
+
#
|
1221
|
+
def ssize: () -> Integer
|
1222
|
+
|
1223
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1224
|
+
# Returns the version value for this LOC record which should always be 00
|
1225
|
+
#
|
1226
|
+
def version: () -> Integer
|
1227
|
+
|
1228
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1229
|
+
# The vertical precision using ssize type values in meters using scientific
|
1230
|
+
# notation as 2 integers of XeY for precision use value/2 e.g. 2m = +/-1m
|
1231
|
+
#
|
1232
|
+
def vprecision: () -> Integer
|
1233
|
+
|
1234
|
+
private
|
1235
|
+
|
1236
|
+
# <!--
|
1237
|
+
# rdoc-file=lib/resolv.rb
|
1238
|
+
# - new(version, ssize, hprecision, vprecision, latitude, longitude, altitude)
|
1239
|
+
# -->
|
1240
|
+
#
|
1241
|
+
def initialize: (Integer version, Integer ssize, Integer hprecision, Integer vprecision, Integer latitude, Integer longitude, Integer altitude) -> untyped
|
1242
|
+
end
|
1243
|
+
|
1244
|
+
Resolv::DNS::Resource::LOC::TypeValue: Integer
|
1245
|
+
|
1246
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1247
|
+
# Mailing list or mailbox information.
|
1248
|
+
#
|
1249
|
+
class Resolv::DNS::Resource::MINFO < Resolv::DNS::Resource
|
1250
|
+
def self.decode_rdata: (Resolv::DNS::Message::MessageDecoder msg) -> instance
|
1251
|
+
|
1252
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1253
|
+
# Mailbox to use for error messages related to the mail list or mailbox.
|
1254
|
+
#
|
1255
|
+
def emailbx: () -> String
|
1256
|
+
|
1257
|
+
def encode_rdata: (Resolv::DNS::Message::MessageEncoder msg) -> void
|
1258
|
+
|
1259
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1260
|
+
# Domain name responsible for this mail list or mailbox.
|
1261
|
+
#
|
1262
|
+
def rmailbx: () -> String
|
1263
|
+
|
1264
|
+
private
|
1265
|
+
|
1266
|
+
# <!--
|
1267
|
+
# rdoc-file=lib/resolv.rb
|
1268
|
+
# - new(rmailbx, emailbx)
|
1269
|
+
# -->
|
1270
|
+
#
|
1271
|
+
def initialize: (String rmailbx, String emailbx) -> untyped
|
1272
|
+
end
|
1273
|
+
|
1274
|
+
Resolv::DNS::Resource::MINFO::TypeValue: Integer
|
1275
|
+
|
1276
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1277
|
+
# Mail Exchanger resource.
|
1278
|
+
#
|
1279
|
+
class Resolv::DNS::Resource::MX < Resolv::DNS::Resource
|
1280
|
+
def self.decode_rdata: (Resolv::DNS::Message::MessageDecoder msg) -> instance
|
1281
|
+
|
1282
|
+
def encode_rdata: (Resolv::DNS::Message::MessageEncoder msg) -> void
|
1283
|
+
|
1284
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1285
|
+
# The host of this MX.
|
1286
|
+
#
|
1287
|
+
def exchange: () -> String
|
1288
|
+
|
1289
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1290
|
+
# The preference for this MX.
|
1291
|
+
#
|
1292
|
+
def preference: () -> Integer
|
1293
|
+
|
1294
|
+
private
|
1295
|
+
|
1296
|
+
# <!--
|
1297
|
+
# rdoc-file=lib/resolv.rb
|
1298
|
+
# - new(preference, exchange)
|
1299
|
+
# -->
|
1300
|
+
# Creates a new MX record with `preference`, accepting mail at `exchange`.
|
1301
|
+
#
|
1302
|
+
def initialize: (Integer preference, String exchange) -> untyped
|
1303
|
+
end
|
1304
|
+
|
1305
|
+
Resolv::DNS::Resource::MX::TypeValue: Integer
|
1306
|
+
|
1307
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1308
|
+
# An authoritative name server.
|
1309
|
+
#
|
1310
|
+
class Resolv::DNS::Resource::NS < Resolv::DNS::Resource::DomainName
|
1311
|
+
end
|
1312
|
+
|
1313
|
+
Resolv::DNS::Resource::NS::TypeValue: Integer
|
1314
|
+
|
1315
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1316
|
+
# A Pointer to another DNS name.
|
1317
|
+
#
|
1318
|
+
class Resolv::DNS::Resource::PTR < Resolv::DNS::Resource::DomainName
|
1319
|
+
end
|
1320
|
+
|
1321
|
+
Resolv::DNS::Resource::PTR::TypeValue: Integer
|
1322
|
+
|
1323
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1324
|
+
# Start Of Authority resource.
|
1325
|
+
#
|
1326
|
+
class Resolv::DNS::Resource::SOA < Resolv::DNS::Resource
|
1327
|
+
def self.decode_rdata: (Resolv::DNS::Message::MessageDecoder msg) -> instance
|
1328
|
+
|
1329
|
+
def encode_rdata: (Resolv::DNS::Message::MessageEncoder msg) -> void
|
1330
|
+
|
1331
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1332
|
+
# Time in seconds that a secondary name server is to use the data before
|
1333
|
+
# refreshing from the primary name server.
|
1334
|
+
#
|
1335
|
+
def expire: () -> Integer
|
1336
|
+
|
1337
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1338
|
+
# The minimum number of seconds to be used for TTL values in RRs.
|
1339
|
+
#
|
1340
|
+
def minimum: () -> Integer
|
1341
|
+
|
1342
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1343
|
+
# Name of the host where the master zone file for this zone resides.
|
1344
|
+
#
|
1345
|
+
def mname: () -> String
|
1346
|
+
|
1347
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1348
|
+
# How often, in seconds, a secondary name server is to check for updates from
|
1349
|
+
# the primary name server.
|
1350
|
+
#
|
1351
|
+
def refresh: () -> Integer
|
1352
|
+
|
1353
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1354
|
+
# How often, in seconds, a secondary name server is to retry after a failure to
|
1355
|
+
# check for a refresh.
|
1356
|
+
#
|
1357
|
+
def retry: () -> Integer
|
1358
|
+
|
1359
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1360
|
+
# The person responsible for this domain name.
|
1361
|
+
#
|
1362
|
+
def rname: () -> String
|
1363
|
+
|
1364
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1365
|
+
# The version number of the zone file.
|
1366
|
+
#
|
1367
|
+
def serial: () -> Integer
|
1368
|
+
|
1369
|
+
private
|
1370
|
+
|
1371
|
+
# <!--
|
1372
|
+
# rdoc-file=lib/resolv.rb
|
1373
|
+
# - new(mname, rname, serial, refresh, retry_, expire, minimum)
|
1374
|
+
# -->
|
1375
|
+
# Creates a new SOA record. See the attr documentation for the details of each
|
1376
|
+
# argument.
|
1377
|
+
#
|
1378
|
+
def initialize: (String mname, String rname, Integer serial, Integer refresh, Integer retry_, Integer expire, Integer minimum) -> untyped
|
1379
|
+
end
|
1380
|
+
|
1381
|
+
Resolv::DNS::Resource::SOA::TypeValue: Integer
|
1382
|
+
|
1383
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1384
|
+
# Unstructured text resource.
|
1385
|
+
#
|
1386
|
+
class Resolv::DNS::Resource::TXT < Resolv::DNS::Resource
|
1387
|
+
def self.decode_rdata: (Resolv::DNS::Message::MessageDecoder msg) -> instance
|
1388
|
+
|
1389
|
+
# <!--
|
1390
|
+
# rdoc-file=lib/resolv.rb
|
1391
|
+
# - data()
|
1392
|
+
# -->
|
1393
|
+
# Returns the concatenated string from `strings`.
|
1394
|
+
#
|
1395
|
+
def data: () -> String
|
1396
|
+
|
1397
|
+
def encode_rdata: (Resolv::DNS::Message::MessageEncoder msg) -> void
|
1398
|
+
|
1399
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1400
|
+
# Returns an Array of Strings for this TXT record.
|
1401
|
+
#
|
1402
|
+
def strings: () -> Array[String]
|
1403
|
+
|
1404
|
+
private
|
1405
|
+
|
1406
|
+
# <!--
|
1407
|
+
# rdoc-file=lib/resolv.rb
|
1408
|
+
# - new(first_string, *rest_strings)
|
1409
|
+
# -->
|
1410
|
+
#
|
1411
|
+
def initialize: (String first_string, *String rest_strings) -> untyped
|
1412
|
+
end
|
1413
|
+
|
1414
|
+
Resolv::DNS::Resource::TXT::TypeValue: Integer
|
1415
|
+
|
1416
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1417
|
+
# Resolv::Hosts is a hostname resolver that uses the system hosts file.
|
1418
|
+
#
|
1419
|
+
class Resolv::Hosts
|
1420
|
+
# <!--
|
1421
|
+
# rdoc-file=lib/resolv.rb
|
1422
|
+
# - each_address(name, &proc)
|
1423
|
+
# -->
|
1424
|
+
# Iterates over all IP addresses for `name` retrieved from the hosts file.
|
1425
|
+
#
|
1426
|
+
def each_address: (String name) { (String) -> void } -> void
|
1427
|
+
|
1428
|
+
# <!--
|
1429
|
+
# rdoc-file=lib/resolv.rb
|
1430
|
+
# - each_name(address, &proc)
|
1431
|
+
# -->
|
1432
|
+
# Iterates over all hostnames for `address` retrieved from the hosts file.
|
1433
|
+
#
|
1434
|
+
def each_name: (String address) { (String) -> void } -> void
|
1435
|
+
|
1436
|
+
# <!--
|
1437
|
+
# rdoc-file=lib/resolv.rb
|
1438
|
+
# - getaddress(name)
|
1439
|
+
# -->
|
1440
|
+
# Gets the IP address of `name` from the hosts file.
|
1441
|
+
#
|
1442
|
+
def getaddress: (String name) -> String
|
1443
|
+
|
1444
|
+
# <!--
|
1445
|
+
# rdoc-file=lib/resolv.rb
|
1446
|
+
# - getaddresses(name)
|
1447
|
+
# -->
|
1448
|
+
# Gets all IP addresses for `name` from the hosts file.
|
1449
|
+
#
|
1450
|
+
def getaddresses: (String name) -> Array[String]
|
1451
|
+
|
1452
|
+
# <!--
|
1453
|
+
# rdoc-file=lib/resolv.rb
|
1454
|
+
# - getname(address)
|
1455
|
+
# -->
|
1456
|
+
# Gets the hostname of `address` from the hosts file.
|
1457
|
+
#
|
1458
|
+
def getname: (String address) -> String
|
1459
|
+
|
1460
|
+
# <!--
|
1461
|
+
# rdoc-file=lib/resolv.rb
|
1462
|
+
# - getnames(address)
|
1463
|
+
# -->
|
1464
|
+
# Gets all hostnames for `address` from the hosts file.
|
1465
|
+
#
|
1466
|
+
def getnames: (String address) -> Array[String]
|
1467
|
+
|
1468
|
+
def lazy_initialize: () -> void
|
1469
|
+
|
1470
|
+
private
|
1471
|
+
|
1472
|
+
# <!--
|
1473
|
+
# rdoc-file=lib/resolv.rb
|
1474
|
+
# - new(filename = DefaultFileName)
|
1475
|
+
# -->
|
1476
|
+
# Creates a new Resolv::Hosts, using `filename` for its data source.
|
1477
|
+
#
|
1478
|
+
def initialize: (?String filename) -> untyped
|
1479
|
+
end
|
1480
|
+
|
1481
|
+
Resolv::Hosts::DefaultFileName: String
|
1482
|
+
|
1483
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1484
|
+
# A Resolv::DNS IPv4 address.
|
1485
|
+
#
|
1486
|
+
class Resolv::IPv4
|
1487
|
+
# <!--
|
1488
|
+
# rdoc-file=lib/resolv.rb
|
1489
|
+
# - create(arg)
|
1490
|
+
# -->
|
1491
|
+
#
|
1492
|
+
def self.create: (String | instance arg) -> instance
|
1493
|
+
|
1494
|
+
def ==: (instance other) -> bool
|
1495
|
+
|
1496
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1497
|
+
# The raw IPv4 address as a String.
|
1498
|
+
#
|
1499
|
+
def address: () -> String
|
1500
|
+
|
1501
|
+
def eql?: (instance other) -> bool
|
1502
|
+
|
1503
|
+
def hash: () -> Integer
|
1504
|
+
|
1505
|
+
def inspect: () -> String
|
1506
|
+
|
1507
|
+
# <!--
|
1508
|
+
# rdoc-file=lib/resolv.rb
|
1509
|
+
# - to_name()
|
1510
|
+
# -->
|
1511
|
+
# Turns this IPv4 address into a Resolv::DNS::Name.
|
1512
|
+
#
|
1513
|
+
def to_name: () -> Resolv::DNS::Name
|
1514
|
+
|
1515
|
+
def to_s: () -> String
|
1516
|
+
|
1517
|
+
private
|
1518
|
+
|
1519
|
+
def initialize: (String address) -> untyped
|
1520
|
+
end
|
1521
|
+
|
1522
|
+
Resolv::IPv4::Regex: Regexp
|
1523
|
+
|
1524
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1525
|
+
# Regular expression IPv4 addresses must match.
|
1526
|
+
#
|
1527
|
+
Resolv::IPv4::Regex256: Regexp
|
1528
|
+
|
1529
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1530
|
+
# A Resolv::DNS IPv6 address.
|
1531
|
+
#
|
1532
|
+
class Resolv::IPv6
|
1533
|
+
# <!--
|
1534
|
+
# rdoc-file=lib/resolv.rb
|
1535
|
+
# - create(arg)
|
1536
|
+
# -->
|
1537
|
+
# Creates a new IPv6 address from `arg` which may be:
|
1538
|
+
#
|
1539
|
+
# IPv6
|
1540
|
+
# : returns `arg`.
|
1541
|
+
#
|
1542
|
+
# String
|
1543
|
+
# : `arg` must match one of the IPv6::Regex* constants
|
1544
|
+
#
|
1545
|
+
def self.create: (String | instance arg) -> instance
|
1546
|
+
|
1547
|
+
def ==: (instance other) -> bool
|
1548
|
+
|
1549
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1550
|
+
# The raw IPv6 address as a String.
|
1551
|
+
#
|
1552
|
+
def address: () -> String
|
1553
|
+
|
1554
|
+
def eql?: (instance other) -> bool
|
1555
|
+
|
1556
|
+
def hash: () -> Integer
|
1557
|
+
|
1558
|
+
def inspect: () -> String
|
1559
|
+
|
1560
|
+
# <!--
|
1561
|
+
# rdoc-file=lib/resolv.rb
|
1562
|
+
# - to_name()
|
1563
|
+
# -->
|
1564
|
+
# Turns this IPv6 address into a Resolv::DNS::Name.
|
1565
|
+
#
|
1566
|
+
def to_name: () -> Resolv::DNS::Name
|
1567
|
+
|
1568
|
+
def to_s: () -> String
|
1569
|
+
|
1570
|
+
private
|
1571
|
+
|
1572
|
+
def initialize: (untyped address) -> untyped
|
1573
|
+
end
|
1574
|
+
|
1575
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1576
|
+
# A composite IPv6 address Regexp.
|
1577
|
+
#
|
1578
|
+
Resolv::IPv6::Regex: Regexp
|
1579
|
+
|
1580
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1581
|
+
# IPv4 mapped IPv6 address format a:b:c:d:e:f:w.x.y.z
|
1582
|
+
#
|
1583
|
+
Resolv::IPv6::Regex_6Hex4Dec: Regexp
|
1584
|
+
|
1585
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1586
|
+
# IPv6 address format a:b:c:d:e:f:g:h
|
1587
|
+
#
|
1588
|
+
Resolv::IPv6::Regex_8Hex: Regexp
|
1589
|
+
|
1590
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1591
|
+
# IPv6 link local address format fe80:b:c:d:e:f:g:h%em1
|
1592
|
+
#
|
1593
|
+
Resolv::IPv6::Regex_8HexLinkLocal: Regexp
|
1594
|
+
|
1595
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1596
|
+
# Compressed IPv6 address format a::b
|
1597
|
+
#
|
1598
|
+
Resolv::IPv6::Regex_CompressedHex: Regexp
|
1599
|
+
|
1600
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1601
|
+
# Compressed IPv4 mapped IPv6 address format a::b:w.x.y.z
|
1602
|
+
#
|
1603
|
+
Resolv::IPv6::Regex_CompressedHex4Dec: Regexp
|
1604
|
+
|
1605
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1606
|
+
# Compressed IPv6 link local address format fe80::b%em1
|
1607
|
+
#
|
1608
|
+
Resolv::IPv6::Regex_CompressedHexLinkLocal: Regexp
|
1609
|
+
|
1610
|
+
module Resolv::LOC
|
1611
|
+
end
|
1612
|
+
|
1613
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1614
|
+
# A Resolv::LOC::Alt
|
1615
|
+
#
|
1616
|
+
class Resolv::LOC::Alt
|
1617
|
+
# <!--
|
1618
|
+
# rdoc-file=lib/resolv.rb
|
1619
|
+
# - create(arg)
|
1620
|
+
# -->
|
1621
|
+
# Creates a new LOC::Alt from `arg` which may be:
|
1622
|
+
#
|
1623
|
+
# LOC::Alt
|
1624
|
+
# : returns `arg`.
|
1625
|
+
#
|
1626
|
+
# String
|
1627
|
+
# : `arg` must match the LOC::Alt::Regex constant
|
1628
|
+
#
|
1629
|
+
def self.create: (Resolv::LOC::Alt | String arg) -> instance
|
1630
|
+
|
1631
|
+
def eql?: (Resolv::LOC::Alt other) -> bool
|
1632
|
+
|
1633
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1634
|
+
# The raw altitude
|
1635
|
+
#
|
1636
|
+
def altitude: () -> Integer
|
1637
|
+
|
1638
|
+
alias == eql?
|
1639
|
+
|
1640
|
+
def hash: () -> Integer
|
1641
|
+
|
1642
|
+
def inspect: () -> String
|
1643
|
+
|
1644
|
+
def to_s: () -> String
|
1645
|
+
|
1646
|
+
private
|
1647
|
+
|
1648
|
+
# <!--
|
1649
|
+
# rdoc-file=lib/resolv.rb
|
1650
|
+
# - new(altitude)
|
1651
|
+
# -->
|
1652
|
+
#
|
1653
|
+
def initialize: (Integer altitude) -> untyped
|
1654
|
+
end
|
1655
|
+
|
1656
|
+
Resolv::LOC::Alt::Regex: Regexp
|
1657
|
+
|
1658
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1659
|
+
# A Resolv::LOC::Coord
|
1660
|
+
#
|
1661
|
+
class Resolv::LOC::Coord
|
1662
|
+
type orientation = "lat" | "lon"
|
1663
|
+
|
1664
|
+
# <!--
|
1665
|
+
# rdoc-file=lib/resolv.rb
|
1666
|
+
# - create(arg)
|
1667
|
+
# -->
|
1668
|
+
# Creates a new LOC::Coord from `arg` which may be:
|
1669
|
+
#
|
1670
|
+
# LOC::Coord
|
1671
|
+
# : returns `arg`.
|
1672
|
+
#
|
1673
|
+
# String
|
1674
|
+
# : `arg` must match the LOC::Coord::Regex constant
|
1675
|
+
#
|
1676
|
+
def self.create: (Resolv::LOC::Coord | String arg) -> instance
|
1677
|
+
|
1678
|
+
def eql?: (Resolv::LOC::Coord other) -> bool
|
1679
|
+
|
1680
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1681
|
+
# The raw coordinates
|
1682
|
+
#
|
1683
|
+
def coordinates: () -> String
|
1684
|
+
|
1685
|
+
alias == eql?
|
1686
|
+
|
1687
|
+
def hash: () -> Integer
|
1688
|
+
|
1689
|
+
def inspect: () -> String
|
1690
|
+
|
1691
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1692
|
+
# The orientation of the hemisphere as 'lat' or 'lon'
|
1693
|
+
#
|
1694
|
+
def orientation: () -> orientation
|
1695
|
+
|
1696
|
+
def to_s: () -> String
|
1697
|
+
|
1698
|
+
private
|
1699
|
+
|
1700
|
+
# <!--
|
1701
|
+
# rdoc-file=lib/resolv.rb
|
1702
|
+
# - new(coordinates,orientation)
|
1703
|
+
# -->
|
1704
|
+
#
|
1705
|
+
def initialize: (String coordinates, orientation orientation) -> untyped
|
1706
|
+
end
|
1707
|
+
|
1708
|
+
Resolv::LOC::Coord::Regex: Regexp
|
1709
|
+
|
1710
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1711
|
+
# A Resolv::LOC::Size
|
1712
|
+
#
|
1713
|
+
class Resolv::LOC::Size
|
1714
|
+
# <!--
|
1715
|
+
# rdoc-file=lib/resolv.rb
|
1716
|
+
# - create(arg)
|
1717
|
+
# -->
|
1718
|
+
# Creates a new LOC::Size from `arg` which may be:
|
1719
|
+
#
|
1720
|
+
# LOC::Size
|
1721
|
+
# : returns `arg`.
|
1722
|
+
#
|
1723
|
+
# String
|
1724
|
+
# : `arg` must match the LOC::Size::Regex constant
|
1725
|
+
#
|
1726
|
+
def self.create: (Resolv::LOC::Size | String arg) -> instance
|
1727
|
+
|
1728
|
+
def eql?: (Resolv::LOC::Size other) -> bool
|
1729
|
+
|
1730
|
+
alias == eql?
|
1731
|
+
|
1732
|
+
def hash: () -> Integer
|
1733
|
+
|
1734
|
+
def inspect: () -> String
|
1735
|
+
|
1736
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1737
|
+
# The raw size
|
1738
|
+
#
|
1739
|
+
def scalar: () -> String
|
1740
|
+
|
1741
|
+
def to_s: () -> String
|
1742
|
+
|
1743
|
+
private
|
1744
|
+
|
1745
|
+
# <!--
|
1746
|
+
# rdoc-file=lib/resolv.rb
|
1747
|
+
# - new(scalar)
|
1748
|
+
# -->
|
1749
|
+
#
|
1750
|
+
def initialize: (String scalar) -> untyped
|
1751
|
+
end
|
1752
|
+
|
1753
|
+
Resolv::LOC::Size::Regex: Regexp
|
1754
|
+
|
1755
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1756
|
+
# Resolv::MDNS is a one-shot Multicast DNS (mDNS) resolver. It blindly makes
|
1757
|
+
# queries to the mDNS addresses without understanding anything about multicast
|
1758
|
+
# ports.
|
1759
|
+
#
|
1760
|
+
# Information taken form the following places:
|
1761
|
+
#
|
1762
|
+
# * RFC 6762
|
1763
|
+
#
|
1764
|
+
class Resolv::MDNS < Resolv::DNS
|
1765
|
+
# <!--
|
1766
|
+
# rdoc-file=lib/resolv.rb
|
1767
|
+
# - each_address(name)
|
1768
|
+
# -->
|
1769
|
+
# Iterates over all IP addresses for `name` retrieved from the mDNS resolver,
|
1770
|
+
# provided name ends with "local". If the name does not end in "local" no
|
1771
|
+
# records will be returned.
|
1772
|
+
#
|
1773
|
+
# `name` can be a Resolv::DNS::Name or a String. Retrieved addresses will be a
|
1774
|
+
# Resolv::IPv4 or Resolv::IPv6
|
1775
|
+
#
|
1776
|
+
def each_address: (Resolv::DNS::dns_name name) -> Resolv::DNS::ip_address
|
1777
|
+
|
1778
|
+
def make_udp_requester: () -> (Resolv::DNS::Requester::ConnectedUDP | Resolv::DNS::Requester::UnconnectedUDP)
|
1779
|
+
|
1780
|
+
private
|
1781
|
+
|
1782
|
+
# <!--
|
1783
|
+
# rdoc-file=lib/resolv.rb
|
1784
|
+
# - new(config_info=nil)
|
1785
|
+
# -->
|
1786
|
+
# Creates a new one-shot Multicast DNS (mDNS) resolver.
|
1787
|
+
#
|
1788
|
+
# `config_info` can be:
|
1789
|
+
#
|
1790
|
+
# nil
|
1791
|
+
# : Uses the default mDNS addresses
|
1792
|
+
#
|
1793
|
+
#
|
1794
|
+
# Hash
|
1795
|
+
# : Must contain :nameserver or :nameserver_port like Resolv::DNS#initialize.
|
1796
|
+
#
|
1797
|
+
def initialize: (?String | Hash[Symbol, untyped] config_info) -> untyped
|
1798
|
+
end
|
1799
|
+
|
1800
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1801
|
+
# Default IPv4 mDNS address
|
1802
|
+
#
|
1803
|
+
Resolv::MDNS::AddressV4: String
|
1804
|
+
|
1805
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1806
|
+
# Default IPv6 mDNS address
|
1807
|
+
#
|
1808
|
+
Resolv::MDNS::AddressV6: String
|
1809
|
+
|
1810
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1811
|
+
# Default mDNS addresses
|
1812
|
+
#
|
1813
|
+
Resolv::MDNS::Addresses: Array[untyped]
|
1814
|
+
|
1815
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1816
|
+
# Default mDNS Port
|
1817
|
+
#
|
1818
|
+
Resolv::MDNS::Port: Integer
|
1819
|
+
|
1820
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1821
|
+
# Indicates a failure to resolve a name or address.
|
1822
|
+
#
|
1823
|
+
class Resolv::ResolvError < StandardError
|
1824
|
+
end
|
1825
|
+
|
1826
|
+
# <!-- rdoc-file=lib/resolv.rb -->
|
1827
|
+
# Indicates a timeout resolving a name or address.
|
1828
|
+
#
|
1829
|
+
class Resolv::ResolvTimeout < Timeout::Error
|
1830
|
+
end
|