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,104 @@
|
|
1
|
+
%a{annotate:rdoc:skip}
|
2
|
+
module URI
|
3
|
+
# <!-- rdoc-file=lib/uri/http.rb -->
|
4
|
+
# The syntax of HTTP URIs is defined in RFC1738 section 3.3.
|
5
|
+
#
|
6
|
+
# Note that the Ruby URI library allows HTTP URLs containing usernames and
|
7
|
+
# passwords. This is not legal as per the RFC, but used to be supported in
|
8
|
+
# Internet Explorer 5 and 6, before the MS04-004 security update. See
|
9
|
+
# <URL:http://support.microsoft.com/kb/834489>.
|
10
|
+
#
|
11
|
+
class HTTP < Generic
|
12
|
+
# <!-- rdoc-file=lib/uri/http.rb -->
|
13
|
+
# A Default port of 80 for URI::HTTP.
|
14
|
+
#
|
15
|
+
DEFAULT_PORT: Integer
|
16
|
+
|
17
|
+
# <!-- rdoc-file=lib/uri/http.rb -->
|
18
|
+
# An Array of the available components for URI::HTTP.
|
19
|
+
#
|
20
|
+
COMPONENT: Array[Symbol]
|
21
|
+
|
22
|
+
# <!--
|
23
|
+
# rdoc-file=lib/uri/http.rb
|
24
|
+
# - build(args)
|
25
|
+
# -->
|
26
|
+
# ## Description
|
27
|
+
#
|
28
|
+
# Creates a new URI::HTTP object from components, with syntax checking.
|
29
|
+
#
|
30
|
+
# The components accepted are userinfo, host, port, path, query, and fragment.
|
31
|
+
#
|
32
|
+
# The components should be provided either as an Array, or as a Hash with keys
|
33
|
+
# formed by preceding the component names with a colon.
|
34
|
+
#
|
35
|
+
# If an Array is used, the components must be passed in the order `[userinfo,
|
36
|
+
# host, port, path, query, fragment]`.
|
37
|
+
#
|
38
|
+
# Example:
|
39
|
+
#
|
40
|
+
# uri = URI::HTTP.build(host: 'www.example.com', path: '/foo/bar')
|
41
|
+
#
|
42
|
+
# uri = URI::HTTP.build([nil, "www.example.com", nil, "/path",
|
43
|
+
# "query", 'fragment'])
|
44
|
+
#
|
45
|
+
# Currently, if passed userinfo components this method generates invalid HTTP
|
46
|
+
# URIs as per RFC 1738.
|
47
|
+
#
|
48
|
+
def self.build: (Array[String | Integer] args) -> instance
|
49
|
+
| ({ userinfo: String?, host: String?, port: Integer?, path: String?, query: String?, fragment: String? }) -> instance
|
50
|
+
|
51
|
+
# <!--
|
52
|
+
# rdoc-file=lib/uri/http.rb
|
53
|
+
# - authority()
|
54
|
+
# -->
|
55
|
+
# ## Description
|
56
|
+
#
|
57
|
+
# Returns the authority for an HTTP uri, as defined in
|
58
|
+
# https://www.rfc-editor.org/rfc/rfc3986#section-3.2.
|
59
|
+
#
|
60
|
+
# Example:
|
61
|
+
#
|
62
|
+
# URI::HTTP.build(host: 'www.example.com', path: '/foo/bar').authority #=> "www.example.com"
|
63
|
+
# URI::HTTP.build(host: 'www.example.com', port: 8000, path: '/foo/bar').authority #=> "www.example.com:8000"
|
64
|
+
# URI::HTTP.build(host: 'www.example.com', port: 80, path: '/foo/bar').authority #=> "www.example.com"
|
65
|
+
#
|
66
|
+
def authority: () -> String
|
67
|
+
|
68
|
+
# <!--
|
69
|
+
# rdoc-file=lib/uri/http.rb
|
70
|
+
# - origin()
|
71
|
+
# -->
|
72
|
+
# ## Description
|
73
|
+
#
|
74
|
+
# Returns the origin for an HTTP uri, as defined in
|
75
|
+
# https://www.rfc-editor.org/rfc/rfc6454.
|
76
|
+
#
|
77
|
+
# Example:
|
78
|
+
#
|
79
|
+
# URI::HTTP.build(host: 'www.example.com', path: '/foo/bar').origin #=> "http://www.example.com"
|
80
|
+
# URI::HTTP.build(host: 'www.example.com', port: 8000, path: '/foo/bar').origin #=> "http://www.example.com:8000"
|
81
|
+
# URI::HTTP.build(host: 'www.example.com', port: 80, path: '/foo/bar').origin #=> "http://www.example.com"
|
82
|
+
# URI::HTTPS.build(host: 'www.example.com', path: '/foo/bar').origin #=> "https://www.example.com"
|
83
|
+
#
|
84
|
+
def origin: () -> String
|
85
|
+
|
86
|
+
# <!--
|
87
|
+
# rdoc-file=lib/uri/http.rb
|
88
|
+
# - request_uri()
|
89
|
+
# -->
|
90
|
+
# ## Description
|
91
|
+
#
|
92
|
+
# Returns the full path for an HTTP request, as required by Net::HTTP::Get.
|
93
|
+
#
|
94
|
+
# If the URI contains a query, the full path is URI#path + '?' + URI#query.
|
95
|
+
# Otherwise, the path is simply URI#path.
|
96
|
+
#
|
97
|
+
# Example:
|
98
|
+
#
|
99
|
+
# uri = URI::HTTP.build(path: '/foo/bar', query: 'test=true')
|
100
|
+
# uri.request_uri # => "/foo/bar?test=true"
|
101
|
+
#
|
102
|
+
def request_uri: () -> String
|
103
|
+
end
|
104
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
%a{annotate:rdoc:skip}
|
2
|
+
module URI
|
3
|
+
# <!-- rdoc-file=lib/uri/https.rb -->
|
4
|
+
# The default port for HTTPS URIs is 443, and the scheme is 'https:' rather than
|
5
|
+
# 'http:'. Other than that, HTTPS URIs are identical to HTTP URIs; see
|
6
|
+
# URI::HTTP.
|
7
|
+
#
|
8
|
+
class HTTPS < HTTP
|
9
|
+
# <!-- rdoc-file=lib/uri/https.rb -->
|
10
|
+
# A Default port of 443 for URI::HTTPS
|
11
|
+
#
|
12
|
+
DEFAULT_PORT: Integer
|
13
|
+
end
|
14
|
+
end
|
@@ -0,0 +1,230 @@
|
|
1
|
+
%a{annotate:rdoc:skip}
|
2
|
+
module URI
|
3
|
+
# <!-- rdoc-file=lib/uri/ldap.rb -->
|
4
|
+
# LDAP URI SCHEMA (described in RFC2255).
|
5
|
+
#
|
6
|
+
class LDAP < Generic
|
7
|
+
# <!-- rdoc-file=lib/uri/ldap.rb -->
|
8
|
+
# A Default port of 389 for URI::LDAP.
|
9
|
+
#
|
10
|
+
DEFAULT_PORT: Integer
|
11
|
+
|
12
|
+
# <!-- rdoc-file=lib/uri/ldap.rb -->
|
13
|
+
# An Array of the available components for URI::LDAP.
|
14
|
+
#
|
15
|
+
COMPONENT: Array[Symbol]
|
16
|
+
|
17
|
+
# <!-- rdoc-file=lib/uri/ldap.rb -->
|
18
|
+
# Scopes available for the starting point.
|
19
|
+
#
|
20
|
+
# * SCOPE_BASE - the Base DN
|
21
|
+
# * SCOPE_ONE - one level under the Base DN, not including the base DN and
|
22
|
+
# not including any entries under this
|
23
|
+
# * SCOPE_SUB - subtrees, all entries at all levels
|
24
|
+
#
|
25
|
+
SCOPE: Array[String]
|
26
|
+
|
27
|
+
# <!--
|
28
|
+
# rdoc-file=lib/uri/ldap.rb
|
29
|
+
# - build(args)
|
30
|
+
# -->
|
31
|
+
# ## Description
|
32
|
+
#
|
33
|
+
# Creates a new URI::LDAP object from components, with syntax checking.
|
34
|
+
#
|
35
|
+
# The components accepted are host, port, dn, attributes, scope, filter, and
|
36
|
+
# extensions.
|
37
|
+
#
|
38
|
+
# The components should be provided either as an Array, or as a Hash with keys
|
39
|
+
# formed by preceding the component names with a colon.
|
40
|
+
#
|
41
|
+
# If an Array is used, the components must be passed in the order `[host, port,
|
42
|
+
# dn, attributes, scope, filter, extensions]`.
|
43
|
+
#
|
44
|
+
# Example:
|
45
|
+
#
|
46
|
+
# uri = URI::LDAP.build({:host => 'ldap.example.com',
|
47
|
+
# :dn => '/dc=example'})
|
48
|
+
#
|
49
|
+
# uri = URI::LDAP.build(["ldap.example.com", nil,
|
50
|
+
# "/dc=example;dc=com", "query", nil, nil, nil])
|
51
|
+
#
|
52
|
+
def self.build: (Array[nil | String | Integer] args) -> URI::LDAP
|
53
|
+
| ({ host: String?, port: Integer?, dn: String?, attributes: String?, scope: String?, filter: String?, extensions: String? }) -> URI::LDAP
|
54
|
+
|
55
|
+
# <!--
|
56
|
+
# rdoc-file=lib/uri/ldap.rb
|
57
|
+
# - new(*arg)
|
58
|
+
# -->
|
59
|
+
# ## Description
|
60
|
+
#
|
61
|
+
# Creates a new URI::LDAP object from generic URI components as per RFC 2396. No
|
62
|
+
# LDAP-specific syntax checking is performed.
|
63
|
+
#
|
64
|
+
# Arguments are `scheme`, `userinfo`, `host`, `port`, `registry`, `path`,
|
65
|
+
# `opaque`, `query`, and `fragment`, in that order.
|
66
|
+
#
|
67
|
+
# Example:
|
68
|
+
#
|
69
|
+
# uri = URI::LDAP.new("ldap", nil, "ldap.example.com", nil, nil,
|
70
|
+
# "/dc=example;dc=com", nil, "query", nil)
|
71
|
+
#
|
72
|
+
# See also URI::Generic.new.
|
73
|
+
#
|
74
|
+
def initialize: (String schema, String? userinfo, String host, Integer? port, String? registry, String? path, String? opaque, String query, String? fragment) -> void
|
75
|
+
|
76
|
+
# <!--
|
77
|
+
# rdoc-file=lib/uri/ldap.rb
|
78
|
+
# - parse_dn()
|
79
|
+
# -->
|
80
|
+
# Private method to cleanup `dn` from using the `path` component attribute.
|
81
|
+
#
|
82
|
+
def parse_dn: () -> nil
|
83
|
+
|
84
|
+
# <!--
|
85
|
+
# rdoc-file=lib/uri/ldap.rb
|
86
|
+
# - parse_query()
|
87
|
+
# -->
|
88
|
+
# Private method to cleanup `attributes`, `scope`, `filter`, and `extensions`
|
89
|
+
# from using the `query` component attribute.
|
90
|
+
#
|
91
|
+
def parse_query: () -> nil
|
92
|
+
|
93
|
+
# <!--
|
94
|
+
# rdoc-file=lib/uri/ldap.rb
|
95
|
+
# - build_path_query()
|
96
|
+
# -->
|
97
|
+
# Private method to assemble `query` from `attributes`, `scope`, `filter`, and
|
98
|
+
# `extensions`.
|
99
|
+
#
|
100
|
+
def build_path_query: () -> String
|
101
|
+
|
102
|
+
# <!--
|
103
|
+
# rdoc-file=lib/uri/ldap.rb
|
104
|
+
# - dn()
|
105
|
+
# -->
|
106
|
+
# Returns dn.
|
107
|
+
#
|
108
|
+
def dn: () -> String
|
109
|
+
|
110
|
+
# <!--
|
111
|
+
# rdoc-file=lib/uri/ldap.rb
|
112
|
+
# - set_dn(val)
|
113
|
+
# -->
|
114
|
+
# Private setter for dn `val`.
|
115
|
+
#
|
116
|
+
def set_dn: (String val) -> String
|
117
|
+
|
118
|
+
# <!--
|
119
|
+
# rdoc-file=lib/uri/ldap.rb
|
120
|
+
# - dn=(val)
|
121
|
+
# -->
|
122
|
+
# Setter for dn `val`.
|
123
|
+
#
|
124
|
+
def dn=: (String val) -> String
|
125
|
+
|
126
|
+
# <!--
|
127
|
+
# rdoc-file=lib/uri/ldap.rb
|
128
|
+
# - attributes()
|
129
|
+
# -->
|
130
|
+
# Returns attributes.
|
131
|
+
#
|
132
|
+
def attributes: () -> String
|
133
|
+
|
134
|
+
# <!--
|
135
|
+
# rdoc-file=lib/uri/ldap.rb
|
136
|
+
# - set_attributes(val)
|
137
|
+
# -->
|
138
|
+
# Private setter for attributes `val`.
|
139
|
+
#
|
140
|
+
def set_attributes: (String val) -> String
|
141
|
+
|
142
|
+
# <!--
|
143
|
+
# rdoc-file=lib/uri/ldap.rb
|
144
|
+
# - attributes=(val)
|
145
|
+
# -->
|
146
|
+
# Setter for attributes `val`.
|
147
|
+
#
|
148
|
+
def attributes=: (String val) -> String
|
149
|
+
|
150
|
+
# <!--
|
151
|
+
# rdoc-file=lib/uri/ldap.rb
|
152
|
+
# - scope()
|
153
|
+
# -->
|
154
|
+
# Returns scope.
|
155
|
+
#
|
156
|
+
def scope: () -> String
|
157
|
+
|
158
|
+
# <!--
|
159
|
+
# rdoc-file=lib/uri/ldap.rb
|
160
|
+
# - set_scope(val)
|
161
|
+
# -->
|
162
|
+
# Private setter for scope `val`.
|
163
|
+
#
|
164
|
+
def set_scope: (String val) -> String
|
165
|
+
|
166
|
+
# <!--
|
167
|
+
# rdoc-file=lib/uri/ldap.rb
|
168
|
+
# - scope=(val)
|
169
|
+
# -->
|
170
|
+
# Setter for scope `val`.
|
171
|
+
#
|
172
|
+
def scope=: (String val) -> String
|
173
|
+
|
174
|
+
# <!--
|
175
|
+
# rdoc-file=lib/uri/ldap.rb
|
176
|
+
# - filter()
|
177
|
+
# -->
|
178
|
+
# Returns filter.
|
179
|
+
#
|
180
|
+
def filter: () -> String
|
181
|
+
|
182
|
+
# <!--
|
183
|
+
# rdoc-file=lib/uri/ldap.rb
|
184
|
+
# - set_filter(val)
|
185
|
+
# -->
|
186
|
+
# Private setter for filter `val`.
|
187
|
+
#
|
188
|
+
def set_filter: (String val) -> String
|
189
|
+
|
190
|
+
# <!--
|
191
|
+
# rdoc-file=lib/uri/ldap.rb
|
192
|
+
# - filter=(val)
|
193
|
+
# -->
|
194
|
+
# Setter for filter `val`.
|
195
|
+
#
|
196
|
+
def filter=: (String val) -> String
|
197
|
+
|
198
|
+
# <!--
|
199
|
+
# rdoc-file=lib/uri/ldap.rb
|
200
|
+
# - extensions()
|
201
|
+
# -->
|
202
|
+
# Returns extensions.
|
203
|
+
#
|
204
|
+
def extensions: () -> untyped
|
205
|
+
|
206
|
+
# <!--
|
207
|
+
# rdoc-file=lib/uri/ldap.rb
|
208
|
+
# - set_extensions(val)
|
209
|
+
# -->
|
210
|
+
# Private setter for extensions `val`.
|
211
|
+
#
|
212
|
+
def set_extensions: (String val) -> String
|
213
|
+
|
214
|
+
# <!--
|
215
|
+
# rdoc-file=lib/uri/ldap.rb
|
216
|
+
# - extensions=(val)
|
217
|
+
# -->
|
218
|
+
# Setter for extensions `val`.
|
219
|
+
#
|
220
|
+
def extensions=: (String val) -> String
|
221
|
+
|
222
|
+
# <!--
|
223
|
+
# rdoc-file=lib/uri/ldap.rb
|
224
|
+
# - hierarchical?()
|
225
|
+
# -->
|
226
|
+
# Checks if URI has a path. For URI::LDAP this will return `false`.
|
227
|
+
#
|
228
|
+
def hierarchical?: () -> ::FalseClass
|
229
|
+
end
|
230
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
%a{annotate:rdoc:skip}
|
2
|
+
module URI
|
3
|
+
# <!-- rdoc-file=lib/uri/ldaps.rb -->
|
4
|
+
# The default port for LDAPS URIs is 636, and the scheme is 'ldaps:' rather than
|
5
|
+
# 'ldap:'. Other than that, LDAPS URIs are identical to LDAP URIs; see
|
6
|
+
# URI::LDAP.
|
7
|
+
#
|
8
|
+
class LDAPS < LDAP
|
9
|
+
# <!-- rdoc-file=lib/uri/ldaps.rb -->
|
10
|
+
# A Default port of 636 for URI::LDAPS
|
11
|
+
#
|
12
|
+
DEFAULT_PORT: Integer
|
13
|
+
end
|
14
|
+
end
|
@@ -0,0 +1,92 @@
|
|
1
|
+
%a{annotate:rdoc:skip}
|
2
|
+
module URI
|
3
|
+
# <!-- rdoc-file=lib/uri/mailto.rb -->
|
4
|
+
# RFC6068, the mailto URL scheme.
|
5
|
+
#
|
6
|
+
class MailTo < Generic
|
7
|
+
EMAIL_REGEXP: Regexp
|
8
|
+
|
9
|
+
# <!--
|
10
|
+
# rdoc-file=lib/uri/mailto.rb
|
11
|
+
# - build(args)
|
12
|
+
# -->
|
13
|
+
# ## Description
|
14
|
+
#
|
15
|
+
# Creates a new URI::MailTo object from components, with syntax checking.
|
16
|
+
#
|
17
|
+
# Components can be provided as an Array or Hash. If an Array is used, the
|
18
|
+
# components must be supplied as `[to, headers]`.
|
19
|
+
#
|
20
|
+
# If a Hash is used, the keys are the component names preceded by colons.
|
21
|
+
#
|
22
|
+
# The headers can be supplied as a pre-encoded string, such as
|
23
|
+
# `"subject=subscribe&cc=address"`, or as an Array of Arrays like `[['subject',
|
24
|
+
# 'subscribe'], ['cc', 'address']]`.
|
25
|
+
#
|
26
|
+
# Examples:
|
27
|
+
#
|
28
|
+
# require 'uri'
|
29
|
+
#
|
30
|
+
# m1 = URI::MailTo.build(['joe@example.com', 'subject=Ruby'])
|
31
|
+
# m1.to_s # => "mailto:joe@example.com?subject=Ruby"
|
32
|
+
#
|
33
|
+
# m2 = URI::MailTo.build(['john@example.com', [['Subject', 'Ruby'], ['Cc', 'jack@example.com']]])
|
34
|
+
# m2.to_s # => "mailto:john@example.com?Subject=Ruby&Cc=jack@example.com"
|
35
|
+
#
|
36
|
+
# m3 = URI::MailTo.build({:to => 'listman@example.com', :headers => [['subject', 'subscribe']]})
|
37
|
+
# m3.to_s # => "mailto:listman@example.com?subject=subscribe"
|
38
|
+
#
|
39
|
+
def self.build: (Array[String]) -> instance
|
40
|
+
| ([String, Array[Array[String]]]) -> instance
|
41
|
+
| (Hash[Symbol, String | Array[Array[String]]]) -> instance
|
42
|
+
|
43
|
+
# <!-- rdoc-file=lib/uri/mailto.rb -->
|
44
|
+
# E-mail headers set by the URL, as an Array of Arrays.
|
45
|
+
#
|
46
|
+
def headers: () -> Array[[String, String]]
|
47
|
+
|
48
|
+
# <!--
|
49
|
+
# rdoc-file=lib/uri/mailto.rb
|
50
|
+
# - headers=(v)
|
51
|
+
# -->
|
52
|
+
# Setter for headers `v`.
|
53
|
+
#
|
54
|
+
def headers=: (String) -> String
|
55
|
+
|
56
|
+
# <!-- rdoc-file=lib/uri/mailto.rb -->
|
57
|
+
# The primary e-mail address of the URL, as a String.
|
58
|
+
#
|
59
|
+
def to: () -> String
|
60
|
+
|
61
|
+
# <!--
|
62
|
+
# rdoc-file=lib/uri/mailto.rb
|
63
|
+
# - to=(v)
|
64
|
+
# -->
|
65
|
+
# Setter for to `v`.
|
66
|
+
#
|
67
|
+
def to=: (String) -> String
|
68
|
+
|
69
|
+
# <!--
|
70
|
+
# rdoc-file=lib/uri/mailto.rb
|
71
|
+
# - to_mailtext()
|
72
|
+
# -->
|
73
|
+
# Returns the RFC822 e-mail text equivalent of the URL, as a String.
|
74
|
+
#
|
75
|
+
# Example:
|
76
|
+
#
|
77
|
+
# require 'uri'
|
78
|
+
#
|
79
|
+
# uri = URI.parse("mailto:ruby-list@ruby-lang.org?Subject=subscribe&cc=myaddr")
|
80
|
+
# uri.to_mailtext
|
81
|
+
# # => "To: ruby-list@ruby-lang.org\nSubject: subscribe\nCc: myaddr\n\n\n"
|
82
|
+
#
|
83
|
+
def to_mailtext: () -> String
|
84
|
+
|
85
|
+
# <!--
|
86
|
+
# rdoc-file=lib/uri/mailto.rb
|
87
|
+
# - to_rfc822text()
|
88
|
+
# -->
|
89
|
+
#
|
90
|
+
def to_rfc822text: () -> String
|
91
|
+
end
|
92
|
+
end
|
@@ -0,0 +1,189 @@
|
|
1
|
+
%a{annotate:rdoc:skip}
|
2
|
+
module URI
|
3
|
+
# <!-- rdoc-file=lib/uri/rfc2396_parser.rb -->
|
4
|
+
# Includes URI::REGEXP::PATTERN
|
5
|
+
#
|
6
|
+
module RFC2396_REGEXP
|
7
|
+
end
|
8
|
+
|
9
|
+
# <!-- rdoc-file=lib/uri/rfc2396_parser.rb -->
|
10
|
+
# Class that parses String's into URI's.
|
11
|
+
#
|
12
|
+
# It contains a Hash set of patterns and Regexp's that match and validate.
|
13
|
+
#
|
14
|
+
class RFC2396_Parser
|
15
|
+
include RFC2396_REGEXP
|
16
|
+
|
17
|
+
# <!-- rdoc-file=lib/uri/rfc2396_parser.rb -->
|
18
|
+
# The Hash of patterns.
|
19
|
+
#
|
20
|
+
# See also URI::Parser.initialize_pattern.
|
21
|
+
#
|
22
|
+
attr_reader pattern: Hash[Symbol, String]
|
23
|
+
|
24
|
+
# <!-- rdoc-file=lib/uri/rfc2396_parser.rb -->
|
25
|
+
# The Hash of Regexp.
|
26
|
+
#
|
27
|
+
# See also URI::Parser.initialize_regexp.
|
28
|
+
#
|
29
|
+
attr_reader regexp: Hash[Symbol, Regexp]
|
30
|
+
|
31
|
+
# <!--
|
32
|
+
# rdoc-file=lib/uri/rfc2396_parser.rb
|
33
|
+
# - new(opts = {})
|
34
|
+
# -->
|
35
|
+
# ## Synopsis
|
36
|
+
#
|
37
|
+
# URI::Parser.new([opts])
|
38
|
+
#
|
39
|
+
# ## Args
|
40
|
+
#
|
41
|
+
# The constructor accepts a hash as options for parser. Keys of options are
|
42
|
+
# pattern names of URI components and values of options are pattern strings. The
|
43
|
+
# constructor generates set of regexps for parsing URIs.
|
44
|
+
#
|
45
|
+
# You can use the following keys:
|
46
|
+
#
|
47
|
+
# * :ESCAPED (URI::PATTERN::ESCAPED in default)
|
48
|
+
# * :UNRESERVED (URI::PATTERN::UNRESERVED in default)
|
49
|
+
# * :DOMLABEL (URI::PATTERN::DOMLABEL in default)
|
50
|
+
# * :TOPLABEL (URI::PATTERN::TOPLABEL in default)
|
51
|
+
# * :HOSTNAME (URI::PATTERN::HOSTNAME in default)
|
52
|
+
#
|
53
|
+
# ## Examples
|
54
|
+
#
|
55
|
+
# p = URI::Parser.new(:ESCAPED => "(?:%[a-fA-F0-9]{2}|%u[a-fA-F0-9]{4})")
|
56
|
+
# u = p.parse("http://example.jp/%uABCD") #=> #<URI::HTTP http://example.jp/%uABCD>
|
57
|
+
# URI.parse(u.to_s) #=> raises URI::InvalidURIError
|
58
|
+
#
|
59
|
+
# s = "http://example.com/ABCD"
|
60
|
+
# u1 = p.parse(s) #=> #<URI::HTTP http://example.com/ABCD>
|
61
|
+
# u2 = URI.parse(s) #=> #<URI::HTTP http://example.com/ABCD>
|
62
|
+
# u1 == u2 #=> true
|
63
|
+
# u1.eql?(u2) #=> false
|
64
|
+
#
|
65
|
+
def initialize: (?Hash[Symbol, String] opts) -> void
|
66
|
+
|
67
|
+
# <!--
|
68
|
+
# rdoc-file=lib/uri/rfc2396_parser.rb
|
69
|
+
# - escape( str )
|
70
|
+
# - escape( str, unsafe )
|
71
|
+
# -->
|
72
|
+
# ## Args
|
73
|
+
#
|
74
|
+
# `str`
|
75
|
+
# : String to make safe
|
76
|
+
#
|
77
|
+
# `unsafe`
|
78
|
+
# : Regexp to apply. Defaults to `self.regexp[:UNSAFE]`
|
79
|
+
#
|
80
|
+
#
|
81
|
+
# ## Description
|
82
|
+
#
|
83
|
+
# Constructs a safe String from `str`, removing unsafe characters, replacing
|
84
|
+
# them with codes.
|
85
|
+
#
|
86
|
+
def escape: (String str, ?Regexp unsafe) -> String
|
87
|
+
|
88
|
+
# <!--
|
89
|
+
# rdoc-file=lib/uri/rfc2396_parser.rb
|
90
|
+
# - extract( str )
|
91
|
+
# - extract( str, schemes )
|
92
|
+
# - extract( str, schemes ) {|item| block }
|
93
|
+
# -->
|
94
|
+
# ## Args
|
95
|
+
#
|
96
|
+
# `str`
|
97
|
+
# : String to search
|
98
|
+
#
|
99
|
+
# `schemes`
|
100
|
+
# : Patterns to apply to `str`
|
101
|
+
#
|
102
|
+
#
|
103
|
+
# ## Description
|
104
|
+
#
|
105
|
+
# Attempts to parse and merge a set of URIs. If no `block` given, then returns
|
106
|
+
# the result, else it calls `block` for each element in result.
|
107
|
+
#
|
108
|
+
# See also URI::Parser.make_regexp.
|
109
|
+
#
|
110
|
+
def extract: (String str, ?Array[String] schemes) -> Array[String]
|
111
|
+
| (String str, ?Array[String] schemes) { (String) -> untyped } -> nil
|
112
|
+
|
113
|
+
# <!--
|
114
|
+
# rdoc-file=lib/uri/rfc2396_parser.rb
|
115
|
+
# - join(*uris)
|
116
|
+
# -->
|
117
|
+
# ## Args
|
118
|
+
#
|
119
|
+
# `uris`
|
120
|
+
# : an Array of Strings
|
121
|
+
#
|
122
|
+
#
|
123
|
+
# ## Description
|
124
|
+
#
|
125
|
+
# Attempts to parse and merge a set of URIs.
|
126
|
+
#
|
127
|
+
def join: (*String uris) -> URI::Generic
|
128
|
+
|
129
|
+
# <!--
|
130
|
+
# rdoc-file=lib/uri/rfc2396_parser.rb
|
131
|
+
# - make_regexp(schemes = nil)
|
132
|
+
# -->
|
133
|
+
# Returns Regexp that is default `self.regexp[:ABS_URI_REF]`, unless `schemes`
|
134
|
+
# is provided. Then it is a Regexp.union with `self.pattern[:X_ABS_URI]`.
|
135
|
+
#
|
136
|
+
def make_regexp: (?Array[String] schemes) -> Regexp
|
137
|
+
|
138
|
+
# <!--
|
139
|
+
# rdoc-file=lib/uri/rfc2396_parser.rb
|
140
|
+
# - parse(uri)
|
141
|
+
# -->
|
142
|
+
# ## Args
|
143
|
+
#
|
144
|
+
# `uri`
|
145
|
+
# : String
|
146
|
+
#
|
147
|
+
#
|
148
|
+
# ## Description
|
149
|
+
#
|
150
|
+
# Parses `uri` and constructs either matching URI scheme object (File, FTP,
|
151
|
+
# HTTP, HTTPS, LDAP, LDAPS, or MailTo) or URI::Generic.
|
152
|
+
#
|
153
|
+
# ## Usage
|
154
|
+
#
|
155
|
+
# p = URI::Parser.new
|
156
|
+
# p.parse("ldap://ldap.example.com/dc=example?user=john")
|
157
|
+
# #=> #<URI::LDAP ldap://ldap.example.com/dc=example?user=john>
|
158
|
+
#
|
159
|
+
def parse: (String uri) -> URI::Generic
|
160
|
+
|
161
|
+
# <!--
|
162
|
+
# rdoc-file=lib/uri/rfc2396_parser.rb
|
163
|
+
# - split(uri)
|
164
|
+
# -->
|
165
|
+
# Returns a split URI against `regexp[:ABS_URI]`.
|
166
|
+
#
|
167
|
+
def split: (String uri) -> [ String?, String?, String?, String?, String?, String?, String?, String?, String? ]
|
168
|
+
|
169
|
+
# <!--
|
170
|
+
# rdoc-file=lib/uri/rfc2396_parser.rb
|
171
|
+
# - unescape( str )
|
172
|
+
# - unescape( str, escaped )
|
173
|
+
# -->
|
174
|
+
# ## Args
|
175
|
+
#
|
176
|
+
# `str`
|
177
|
+
# : String to remove escapes from
|
178
|
+
#
|
179
|
+
# `escaped`
|
180
|
+
# : Regexp to apply. Defaults to `self.regexp[:ESCAPED]`
|
181
|
+
#
|
182
|
+
#
|
183
|
+
# ## Description
|
184
|
+
#
|
185
|
+
# Removes escapes from `str`.
|
186
|
+
#
|
187
|
+
def unescape: (String str, ?Regexp escaped) -> String
|
188
|
+
end
|
189
|
+
end
|
data/stdlib/uri/0/ws.rbs
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
%a{annotate:rdoc:skip}
|
2
|
+
module URI
|
3
|
+
# <!-- rdoc-file=lib/uri/ws.rb -->
|
4
|
+
# The syntax of WS URIs is defined in RFC6455 section 3.
|
5
|
+
#
|
6
|
+
# Note that the Ruby URI library allows WS URLs containing usernames and
|
7
|
+
# passwords. This is not legal as per the RFC, but used to be supported in
|
8
|
+
# Internet Explorer 5 and 6, before the MS04-004 security update. See
|
9
|
+
# <URL:http://support.microsoft.com/kb/834489>.
|
10
|
+
#
|
11
|
+
class WS < Generic
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1 @@
|
|
1
|
+
module YAML = Psych
|