rbs 2.0.0 → 2.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (179) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ruby.yml +5 -0
  3. data/CHANGELOG.md +23 -0
  4. data/README.md +6 -1
  5. data/core/array.rbs +2866 -1086
  6. data/core/basic_object.rbs +150 -30
  7. data/core/binding.rbs +33 -0
  8. data/core/builtin.rbs +4 -4
  9. data/core/class.rbs +43 -5
  10. data/core/comparable.rbs +57 -0
  11. data/core/complex.rbs +170 -4
  12. data/core/constants.rbs +51 -0
  13. data/core/deprecated.rbs +7 -0
  14. data/core/dir.rbs +305 -20
  15. data/core/encoding.rbs +472 -77
  16. data/core/enumerable.rbs +2173 -234
  17. data/core/enumerator.rbs +448 -182
  18. data/core/env.rbs +448 -1
  19. data/core/errno.rbs +1 -10
  20. data/core/errors.rbs +152 -2
  21. data/core/exception.rbs +201 -127
  22. data/core/false_class.rbs +27 -0
  23. data/core/fiber.rbs +118 -37
  24. data/core/fiber_error.rbs +8 -9
  25. data/core/file.rbs +1059 -139
  26. data/core/file_test.rbs +287 -32
  27. data/core/float.rbs +776 -300
  28. data/core/gc.rbs +185 -34
  29. data/core/global_variables.rbs +5 -1
  30. data/core/hash.rbs +1582 -649
  31. data/core/integer.rbs +974 -204
  32. data/core/io/buffer.rbs +710 -0
  33. data/core/io/wait.rbs +29 -8
  34. data/core/io.rbs +2438 -417
  35. data/core/kernel.rbs +2315 -316
  36. data/core/marshal.rbs +37 -2
  37. data/core/match_data.rbs +123 -6
  38. data/core/math.rbs +126 -6
  39. data/core/method.rbs +226 -102
  40. data/core/module.rbs +421 -45
  41. data/core/nil_class.rbs +64 -0
  42. data/core/numeric.rbs +620 -142
  43. data/core/object.rbs +453 -81
  44. data/core/object_space.rbs +92 -2
  45. data/core/proc.rbs +482 -285
  46. data/core/process.rbs +443 -34
  47. data/core/ractor.rbs +232 -9
  48. data/core/random.rbs +151 -52
  49. data/core/range.rbs +885 -160
  50. data/core/rational.rbs +122 -6
  51. data/core/rb_config.rbs +14 -4
  52. data/core/refinement.rbs +44 -0
  53. data/core/regexp.rbs +156 -14
  54. data/core/ruby_vm.rbs +42 -3
  55. data/core/signal.rbs +78 -39
  56. data/core/string.rbs +2123 -567
  57. data/core/string_io.rbs +204 -0
  58. data/core/struct.rbs +283 -28
  59. data/core/symbol.rbs +304 -30
  60. data/core/thread.rbs +1288 -688
  61. data/core/thread_group.rbs +66 -10
  62. data/core/time.rbs +643 -217
  63. data/core/trace_point.rbs +100 -12
  64. data/core/true_class.rbs +24 -0
  65. data/core/unbound_method.rbs +73 -7
  66. data/core/warning.rbs +37 -12
  67. data/docs/CONTRIBUTING.md +40 -34
  68. data/docs/stdlib.md +3 -102
  69. data/lib/rbs/annotate/annotations.rb +197 -0
  70. data/lib/rbs/annotate/formatter.rb +80 -0
  71. data/lib/rbs/annotate/rdoc_annotator.rb +398 -0
  72. data/lib/rbs/annotate/rdoc_source.rb +120 -0
  73. data/lib/rbs/annotate.rb +6 -0
  74. data/lib/rbs/cli.rb +45 -1
  75. data/lib/rbs/definition_builder.rb +5 -1
  76. data/lib/rbs/location_aux.rb +12 -0
  77. data/lib/rbs/prototype/rb.rb +12 -0
  78. data/lib/rbs/version.rb +1 -1
  79. data/sig/annotate/annotations.rbs +102 -0
  80. data/sig/annotate/formatter.rbs +24 -0
  81. data/sig/annotate/rdoc_annotater.rbs +82 -0
  82. data/sig/annotate/rdoc_source.rbs +30 -0
  83. data/sig/cli.rbs +2 -0
  84. data/sig/collection/{collections.rbs → sources.rbs} +0 -0
  85. data/sig/location.rbs +6 -0
  86. data/sig/method_types.rbs +5 -1
  87. data/sig/polyfill.rbs +78 -0
  88. data/stdlib/abbrev/0/abbrev.rbs +6 -0
  89. data/stdlib/abbrev/0/array.rbs +26 -0
  90. data/stdlib/base64/0/base64.rbs +31 -0
  91. data/stdlib/benchmark/0/benchmark.rbs +74 -3
  92. data/stdlib/bigdecimal/0/big_decimal.rbs +614 -165
  93. data/stdlib/bigdecimal-math/0/big_math.rbs +41 -64
  94. data/stdlib/cgi/0/core.rbs +59 -0
  95. data/stdlib/coverage/0/coverage.rbs +164 -2
  96. data/stdlib/csv/0/csv.rbs +2862 -398
  97. data/stdlib/date/0/date.rbs +483 -25
  98. data/stdlib/date/0/date_time.rbs +187 -12
  99. data/stdlib/dbm/0/dbm.rbs +152 -17
  100. data/stdlib/digest/0/digest.rbs +146 -0
  101. data/stdlib/erb/0/erb.rbs +65 -245
  102. data/stdlib/fiber/0/fiber.rbs +73 -91
  103. data/stdlib/fileutils/0/fileutils.rbs +301 -1
  104. data/stdlib/find/0/find.rbs +9 -0
  105. data/stdlib/forwardable/0/forwardable.rbs +65 -1
  106. data/stdlib/io-console/0/io-console.rbs +227 -15
  107. data/stdlib/ipaddr/0/ipaddr.rbs +161 -0
  108. data/stdlib/json/0/json.rbs +1146 -144
  109. data/stdlib/logger/0/formatter.rbs +24 -0
  110. data/stdlib/logger/0/log_device.rbs +64 -0
  111. data/stdlib/logger/0/logger.rbs +165 -13
  112. data/stdlib/logger/0/period.rbs +10 -0
  113. data/stdlib/logger/0/severity.rbs +26 -0
  114. data/stdlib/monitor/0/monitor.rbs +163 -0
  115. data/stdlib/mutex_m/0/mutex_m.rbs +35 -6
  116. data/stdlib/net-http/0/net-http.rbs +1492 -683
  117. data/stdlib/nkf/0/nkf.rbs +372 -0
  118. data/stdlib/objspace/0/objspace.rbs +149 -90
  119. data/stdlib/openssl/0/openssl.rbs +8108 -71
  120. data/stdlib/optparse/0/optparse.rbs +487 -19
  121. data/stdlib/pathname/0/pathname.rbs +425 -124
  122. data/stdlib/prettyprint/0/prettyprint.rbs +120 -99
  123. data/stdlib/prime/0/integer-extension.rbs +20 -2
  124. data/stdlib/prime/0/prime.rbs +88 -21
  125. data/stdlib/pstore/0/pstore.rbs +102 -0
  126. data/stdlib/pty/0/pty.rbs +64 -14
  127. data/stdlib/resolv/0/resolv.rbs +420 -31
  128. data/stdlib/rubygems/0/basic_specification.rbs +4 -1
  129. data/stdlib/rubygems/0/config_file.rbs +33 -1
  130. data/stdlib/rubygems/0/dependency_installer.rbs +4 -3
  131. data/stdlib/rubygems/0/installer.rbs +13 -1
  132. data/stdlib/rubygems/0/path_support.rbs +4 -1
  133. data/stdlib/rubygems/0/platform.rbs +5 -1
  134. data/stdlib/rubygems/0/request_set.rbs +44 -2
  135. data/stdlib/rubygems/0/requirement.rbs +65 -2
  136. data/stdlib/rubygems/0/rubygems.rbs +407 -0
  137. data/stdlib/rubygems/0/source_list.rbs +13 -0
  138. data/stdlib/rubygems/0/specification.rbs +21 -1
  139. data/stdlib/rubygems/0/stream_ui.rbs +3 -1
  140. data/stdlib/rubygems/0/uninstaller.rbs +8 -1
  141. data/stdlib/rubygems/0/version.rbs +60 -157
  142. data/stdlib/securerandom/0/securerandom.rbs +44 -0
  143. data/stdlib/set/0/set.rbs +420 -106
  144. data/stdlib/shellwords/0/shellwords.rbs +55 -77
  145. data/stdlib/singleton/0/singleton.rbs +20 -0
  146. data/stdlib/socket/0/addrinfo.rbs +210 -9
  147. data/stdlib/socket/0/basic_socket.rbs +103 -11
  148. data/stdlib/socket/0/ip_socket.rbs +31 -9
  149. data/stdlib/socket/0/socket.rbs +586 -38
  150. data/stdlib/socket/0/tcp_server.rbs +22 -2
  151. data/stdlib/socket/0/tcp_socket.rbs +12 -1
  152. data/stdlib/socket/0/udp_socket.rbs +25 -2
  153. data/stdlib/socket/0/unix_server.rbs +22 -2
  154. data/stdlib/socket/0/unix_socket.rbs +45 -5
  155. data/stdlib/strscan/0/string_scanner.rbs +210 -9
  156. data/stdlib/tempfile/0/tempfile.rbs +58 -10
  157. data/stdlib/time/0/time.rbs +208 -116
  158. data/stdlib/timeout/0/timeout.rbs +10 -0
  159. data/stdlib/tmpdir/0/tmpdir.rbs +13 -4
  160. data/stdlib/tsort/0/cyclic.rbs +1 -0
  161. data/stdlib/tsort/0/interfaces.rbs +1 -0
  162. data/stdlib/tsort/0/tsort.rbs +42 -0
  163. data/stdlib/uri/0/common.rbs +57 -8
  164. data/stdlib/uri/0/file.rbs +55 -109
  165. data/stdlib/uri/0/ftp.rbs +6 -3
  166. data/stdlib/uri/0/generic.rbs +556 -327
  167. data/stdlib/uri/0/http.rbs +26 -115
  168. data/stdlib/uri/0/https.rbs +8 -102
  169. data/stdlib/uri/0/ldap.rbs +143 -137
  170. data/stdlib/uri/0/ldaps.rbs +8 -102
  171. data/stdlib/uri/0/mailto.rbs +3 -0
  172. data/stdlib/uri/0/rfc2396_parser.rbs +66 -26
  173. data/stdlib/uri/0/ws.rbs +6 -3
  174. data/stdlib/uri/0/wss.rbs +5 -3
  175. data/stdlib/yaml/0/dbm.rbs +151 -87
  176. data/stdlib/yaml/0/store.rbs +6 -0
  177. data/stdlib/zlib/0/zlib.rbs +90 -31
  178. metadata +17 -5
  179. data/lib/rbs/location.rb +0 -221
@@ -1,3 +1,4 @@
1
+ # <!-- rdoc-file=lib/uri.rb -->
1
2
  # URI is a module providing classes to handle Uniform Resource Identifiers
2
3
  # ([RFC2396](http://tools.ietf.org/html/rfc2396)).
3
4
  #
@@ -30,7 +31,7 @@
30
31
  # class RSYNC < Generic
31
32
  # DEFAULT_PORT = 873
32
33
  # end
33
- # @@schemes['RSYNC'] = RSYNC
34
+ # register_scheme 'RSYNC', RSYNC
34
35
  # end
35
36
  # #=> URI::RSYNC
36
37
  #
@@ -75,7 +76,6 @@
75
76
  # * URI::REGEXP::PATTERN - (in uri/common.rb)
76
77
  #
77
78
  # * URI::Util - (in uri/common.rb)
78
- # * URI::Escape - (in uri/common.rb)
79
79
  # * URI::Error - (in uri/common.rb)
80
80
  # * URI::InvalidURIError - (in uri/common.rb)
81
81
  # * URI::InvalidComponentError - (in uri/common.rb)
@@ -93,39 +93,44 @@
93
93
  # License
94
94
  # : Copyright (c) 2001 akira yamada <akira@ruby-lang.org> You can redistribute
95
95
  # it and/or modify it under the same term as Ruby.
96
- # Revision
97
- # : $Id$
98
- #
99
96
  #
100
97
  module URI
101
- #
102
- # Base class for all URI classes.
103
- # Implements generic URI syntax as per RFC 2396.
98
+ # <!-- rdoc-file=lib/uri/generic.rb -->
99
+ # Base class for all URI classes. Implements generic URI syntax as per RFC 2396.
104
100
  #
105
101
  class Generic
106
102
  include URI
107
103
 
108
- #
104
+ # <!-- rdoc-file=lib/uri/generic.rb -->
109
105
  # A Default port of nil for URI::Generic.
110
106
  #
111
107
  DEFAULT_PORT: nil | Integer
112
108
 
113
- #
109
+ # <!--
110
+ # rdoc-file=lib/uri/generic.rb
111
+ # - default_port()
112
+ # -->
114
113
  # Returns default port.
115
114
  #
116
115
  def self.default_port: () -> (nil | Integer)
117
116
 
118
- #
117
+ # <!--
118
+ # rdoc-file=lib/uri/generic.rb
119
+ # - default_port()
120
+ # -->
119
121
  # Returns default port.
120
122
  #
121
123
  def default_port: () -> (nil | Integer)
122
124
 
123
- #
125
+ # <!-- rdoc-file=lib/uri/generic.rb -->
124
126
  # An Array of the available components for URI::Generic.
125
127
  #
126
128
  COMPONENT: Array[Symbol]
127
129
 
128
- #
130
+ # <!--
131
+ # rdoc-file=lib/uri/generic.rb
132
+ # - component()
133
+ # -->
129
134
  # Components of the URI in the order.
130
135
  #
131
136
  def self.component: () -> Array[Symbol]
@@ -134,12 +139,15 @@ module URI
134
139
 
135
140
  def self.use_registry: () -> bool
136
141
 
137
- #
138
- # == Synopsis
142
+ # <!--
143
+ # rdoc-file=lib/uri/generic.rb
144
+ # - build2(args)
145
+ # -->
146
+ # ## Synopsis
139
147
  #
140
148
  # See ::new.
141
149
  #
142
- # == Description
150
+ # ## Description
143
151
  #
144
152
  # At first, tries to create a new URI::Generic instance using
145
153
  # URI::Generic::build. But, if exception URI::InvalidComponentError is raised,
@@ -148,382 +156,498 @@ module URI
148
156
  def self.build2: (Array[nil | String | Integer]) -> URI::Generic
149
157
  | ({ scheme: String, userinfo: String, host: String, port: Integer, registry: String?, path: String, opaque: String?, query: String, fragment: String }) -> URI::Generic
150
158
 
151
- #
152
- # == Synopsis
159
+ # <!--
160
+ # rdoc-file=lib/uri/generic.rb
161
+ # - build(args)
162
+ # -->
163
+ # ## Synopsis
153
164
  #
154
165
  # See ::new.
155
166
  #
156
- # == Description
167
+ # ## Description
157
168
  #
158
- # Creates a new URI::Generic instance from components of URI::Generic
159
- # with check. Components are: scheme, userinfo, host, port, registry, path,
160
- # opaque, query, and fragment. You can provide arguments either by an Array or a Hash.
169
+ # Creates a new URI::Generic instance from components of URI::Generic with
170
+ # check. Components are: scheme, userinfo, host, port, registry, path, opaque,
171
+ # query, and fragment. You can provide arguments either by an Array or a Hash.
161
172
  # See ::new for hash keys to use or for order of array items.
162
173
  #
163
174
  def self.build: (Array[nil | String | Integer]) -> URI::Generic
164
175
  | ({ scheme: String, userinfo: String, host: String, port: Integer, registry: String?, path: String, opaque: String?, query: String, fragment: String }) -> URI::Generic
165
176
 
166
- #
167
- # == Args
168
- #
169
- # +scheme+::
170
- # Protocol scheme, i.e. 'http','ftp','mailto' and so on.
171
- # +userinfo+::
172
- # User name and password, i.e. 'sdmitry:bla'.
173
- # +host+::
174
- # Server host name.
175
- # +port+::
176
- # Server port.
177
- # +registry+::
178
- # Registry of naming authorities.
179
- # +path+::
180
- # Path on server.
181
- # +opaque+::
182
- # Opaque part.
183
- # +query+::
184
- # Query data.
185
- # +fragment+::
186
- # Part of the URI after '#' character.
187
- # +parser+::
188
- # Parser for internal use [URI::DEFAULT_PARSER by default].
189
- # +arg_check+::
190
- # Check arguments [false by default].
191
- #
192
- # == Description
177
+ # <!--
178
+ # rdoc-file=lib/uri/generic.rb
179
+ # - new(scheme, userinfo, host, port, registry, path, opaque, query, fragment, parser = DEFAULT_PARSER, arg_check = false)
180
+ # -->
181
+ # ## Args
182
+ #
183
+ # `scheme`
184
+ # : Protocol scheme, i.e. 'http','ftp','mailto' and so on.
185
+ # `userinfo`
186
+ # : User name and password, i.e. 'sdmitry:bla'.
187
+ # `host`
188
+ # : Server host name.
189
+ # `port`
190
+ # : Server port.
191
+ # `registry`
192
+ # : Registry of naming authorities.
193
+ # `path`
194
+ # : Path on server.
195
+ # `opaque`
196
+ # : Opaque part.
197
+ # `query`
198
+ # : Query data.
199
+ # `fragment`
200
+ # : Part of the URI after '#' character.
201
+ # `parser`
202
+ # : Parser for internal use [URI::DEFAULT_PARSER by default].
203
+ # `arg_check`
204
+ # : Check arguments [false by default].
205
+ #
206
+ #
207
+ # ## Description
193
208
  #
194
209
  # Creates a new URI::Generic instance from ``generic'' components without check.
195
210
  #
196
211
  def initialize: (String? scheme, String? userinfo, String? host, (String | Integer)? port, nil registry, String? path, String? opaque, String? query, String? fragment, ?untyped parser, ?boolish arg_check) -> void
197
212
 
198
- #
213
+ # <!-- rdoc-file=lib/uri/generic.rb -->
199
214
  # Returns the scheme component of the URI.
200
215
  #
201
- # URI("http://foo/bar/baz").scheme #=> "http"
216
+ # URI("http://foo/bar/baz").scheme #=> "http"
202
217
  #
203
218
  attr_reader scheme: String?
204
219
 
220
+ # <!-- rdoc-file=lib/uri/generic.rb -->
205
221
  # Returns the host component of the URI.
206
222
  #
207
- # URI("http://foo/bar/baz").host #=> "foo"
223
+ # URI("http://foo/bar/baz").host #=> "foo"
208
224
  #
209
225
  # It returns nil if no host component exists.
210
226
  #
211
- # URI("mailto:foo@example.org").host #=> nil
227
+ # URI("mailto:foo@example.org").host #=> nil
212
228
  #
213
229
  # The component does not contain the port number.
214
230
  #
215
- # URI("http://foo:8080/bar/baz").host #=> "foo"
231
+ # URI("http://foo:8080/bar/baz").host #=> "foo"
216
232
  #
217
- # Since IPv6 addresses are wrapped with brackets in URIs,
218
- # this method returns IPv6 addresses wrapped with brackets.
219
- # This form is not appropriate to pass to socket methods such as TCPSocket.open.
220
- # If unwrapped host names are required, use the #hostname method.
233
+ # Since IPv6 addresses are wrapped with brackets in URIs, this method returns
234
+ # IPv6 addresses wrapped with brackets. This form is not appropriate to pass to
235
+ # socket methods such as TCPSocket.open. If unwrapped host names are required,
236
+ # use the #hostname method.
221
237
  #
222
- # URI("http://[::1]/bar/baz").host #=> "[::1]"
223
- # URI("http://[::1]/bar/baz").hostname #=> "::1"
238
+ # URI("http://[::1]/bar/baz").host #=> "[::1]"
239
+ # URI("http://[::1]/bar/baz").hostname #=> "::1"
224
240
  #
225
241
  attr_reader host: String?
226
242
 
243
+ # <!-- rdoc-file=lib/uri/generic.rb -->
227
244
  # Returns the port component of the URI.
228
245
  #
229
- # URI("http://foo/bar/baz").port #=> 80
230
- # URI("http://foo:8080/bar/baz").port #=> 8080
246
+ # URI("http://foo/bar/baz").port #=> 80
247
+ # URI("http://foo:8080/bar/baz").port #=> 8080
231
248
  #
232
249
  attr_reader port: Integer?
233
250
 
234
251
  def registry: () -> nil
235
252
 
253
+ # <!-- rdoc-file=lib/uri/generic.rb -->
236
254
  # Returns the path component of the URI.
237
255
  #
238
- # URI("http://foo/bar/baz").path #=> "/bar/baz"
256
+ # URI("http://foo/bar/baz").path #=> "/bar/baz"
239
257
  #
240
258
  attr_reader path: String?
241
259
 
260
+ # <!-- rdoc-file=lib/uri/generic.rb -->
242
261
  # Returns the query component of the URI.
243
262
  #
244
- # URI("http://foo/bar/baz?search=FooBar").query #=> "search=FooBar"
263
+ # URI("http://foo/bar/baz?search=FooBar").query #=> "search=FooBar"
245
264
  #
246
265
  attr_reader query: String?
247
266
 
267
+ # <!-- rdoc-file=lib/uri/generic.rb -->
248
268
  # Returns the opaque part of the URI.
249
269
  #
250
- # URI("mailto:foo@example.org").opaque #=> "foo@example.org"
251
- # URI("http://foo/bar/baz").opaque #=> nil
270
+ # URI("mailto:foo@example.org").opaque #=> "foo@example.org"
271
+ # URI("http://foo/bar/baz").opaque #=> nil
252
272
  #
253
- # The portion of the path that does not make use of the slash '/'.
254
- # The path typically refers to an absolute path or an opaque part.
255
- # (See RFC2396 Section 3 and 5.2.)
273
+ # The portion of the path that does not make use of the slash '/'. The path
274
+ # typically refers to an absolute path or an opaque part. (See RFC2396 Section 3
275
+ # and 5.2.)
256
276
  #
257
277
  attr_reader opaque: String?
258
278
 
279
+ # <!-- rdoc-file=lib/uri/generic.rb -->
259
280
  # Returns the fragment component of the URI.
260
281
  #
261
- # URI("http://foo/bar/baz?search=FooBar#ponies").fragment #=> "ponies"
282
+ # URI("http://foo/bar/baz?search=FooBar#ponies").fragment #=> "ponies"
262
283
  #
263
284
  attr_reader fragment: String?
264
285
 
286
+ # <!--
287
+ # rdoc-file=lib/uri/generic.rb
288
+ # - parser()
289
+ # -->
265
290
  # Returns the parser to be used.
266
291
  #
267
292
  # Unless a URI::Parser is defined, DEFAULT_PARSER is used.
268
293
  #
269
294
  def parser: () -> untyped
270
295
 
296
+ # <!--
297
+ # rdoc-file=lib/uri/generic.rb
298
+ # - replace!(oth)
299
+ # -->
271
300
  # Replaces self by other URI object.
272
301
  #
273
302
  def replace!: (URI::Generic oth) -> URI::Generic
274
303
 
275
- #
304
+ # <!--
305
+ # rdoc-file=lib/uri/generic.rb
306
+ # - component()
307
+ # -->
276
308
  # Components of the URI in the order.
277
309
  #
278
310
  def component: () -> Array[Symbol]
279
311
 
280
- #
281
- # Checks the scheme +v+ component against the URI::Parser Regexp for :SCHEME.
312
+ # <!--
313
+ # rdoc-file=lib/uri/generic.rb
314
+ # - check_scheme(v)
315
+ # -->
316
+ # Checks the scheme `v` component against the URI::Parser Regexp for :SCHEME.
282
317
  #
283
318
  def check_scheme: (String? v) -> true
284
319
 
285
- # Protected setter for the scheme component +v+.
320
+ # <!--
321
+ # rdoc-file=lib/uri/generic.rb
322
+ # - set_scheme(v)
323
+ # -->
324
+ # Protected setter for the scheme component `v`.
286
325
  #
287
326
  # See also URI::Generic.scheme=.
288
327
  #
289
328
  def set_scheme: (String? v) -> String?
290
329
 
330
+ # <!--
331
+ # rdoc-file=lib/uri/generic.rb
332
+ # - scheme=(v)
333
+ # -->
334
+ # ## Args
291
335
  #
292
- # == Args
336
+ # `v`
337
+ # : String
293
338
  #
294
- # +v+::
295
- # String
296
339
  #
297
- # == Description
340
+ # ## Description
298
341
  #
299
- # Public setter for the scheme component +v+
300
- # (with validation).
342
+ # Public setter for the scheme component `v` (with validation).
301
343
  #
302
344
  # See also URI::Generic.check_scheme.
303
345
  #
304
- # == Usage
346
+ # ## Usage
305
347
  #
306
- # require 'uri'
348
+ # require 'uri'
307
349
  #
308
- # uri = URI.parse("http://my.example.com")
309
- # uri.scheme = "https"
310
- # uri.to_s #=> "https://my.example.com"
350
+ # uri = URI.parse("http://my.example.com")
351
+ # uri.scheme = "https"
352
+ # uri.to_s #=> "https://my.example.com"
311
353
  #
312
354
  def scheme=: (String? v) -> String?
313
355
 
356
+ # <!--
357
+ # rdoc-file=lib/uri/generic.rb
358
+ # - check_userinfo(user, password = nil)
359
+ # -->
360
+ # Checks the `user` and `password`.
314
361
  #
315
- # Checks the +user+ and +password+.
316
- #
317
- # If +password+ is not provided, then +user+ is
318
- # split, using URI::Generic.split_userinfo, to
319
- # pull +user+ and +password.
362
+ # If `password` is not provided, then `user` is split, using
363
+ # URI::Generic.split_userinfo, to pull `user` and +password.
320
364
  #
321
365
  # See also URI::Generic.check_user, URI::Generic.check_password.
322
366
  #
323
367
  def check_userinfo: (String user, ?String? password) -> true
324
368
 
369
+ # <!--
370
+ # rdoc-file=lib/uri/generic.rb
371
+ # - check_user(v)
372
+ # -->
373
+ # Checks the user `v` component for RFC2396 compliance and against the
374
+ # URI::Parser Regexp for :USERINFO.
325
375
  #
326
- # Checks the user +v+ component for RFC2396 compliance
327
- # and against the URI::Parser Regexp for :USERINFO.
328
- #
329
- # Can not have a registry or opaque component defined,
330
- # with a user component defined.
376
+ # Can not have a registry or opaque component defined, with a user component
377
+ # defined.
331
378
  #
332
379
  def check_user: (String v) -> (String | true)
333
380
 
381
+ # <!--
382
+ # rdoc-file=lib/uri/generic.rb
383
+ # - check_password(v, user = @user)
384
+ # -->
385
+ # Checks the password `v` component for RFC2396 compliance and against the
386
+ # URI::Parser Regexp for :USERINFO.
334
387
  #
335
- # Checks the password +v+ component for RFC2396 compliance
336
- # and against the URI::Parser Regexp for :USERINFO.
337
- #
338
- # Can not have a registry or opaque component defined,
339
- # with a user component defined.
388
+ # Can not have a registry or opaque component defined, with a user component
389
+ # defined.
340
390
  #
341
391
  def check_password: (String? v, ?String user) -> (String? | true)
342
392
 
343
- #
393
+ # <!--
394
+ # rdoc-file=lib/uri/generic.rb
395
+ # - userinfo=(userinfo)
396
+ # -->
344
397
  # Sets userinfo, argument is string like 'name:pass'.
345
398
  #
346
399
  def userinfo=: (String? userinfo) -> String?
347
400
 
401
+ # <!--
402
+ # rdoc-file=lib/uri/generic.rb
403
+ # - user=(user)
404
+ # -->
405
+ # ## Args
348
406
  #
349
- # == Args
407
+ # `v`
408
+ # : String
350
409
  #
351
- # +v+::
352
- # String
353
410
  #
354
- # == Description
411
+ # ## Description
355
412
  #
356
- # Public setter for the +user+ component
357
- # (with validation).
413
+ # Public setter for the `user` component (with validation).
358
414
  #
359
415
  # See also URI::Generic.check_user.
360
416
  #
361
- # == Usage
417
+ # ## Usage
362
418
  #
363
- # require 'uri'
419
+ # require 'uri'
364
420
  #
365
- # uri = URI.parse("http://john:S3nsit1ve@my.example.com")
366
- # uri.user = "sam"
367
- # uri.to_s #=> "http://sam:V3ry_S3nsit1ve@my.example.com"
421
+ # uri = URI.parse("http://john:S3nsit1ve@my.example.com")
422
+ # uri.user = "sam"
423
+ # uri.to_s #=> "http://sam:V3ry_S3nsit1ve@my.example.com"
368
424
  #
369
425
  def user=: (String? user) -> String?
370
426
 
427
+ # <!--
428
+ # rdoc-file=lib/uri/generic.rb
429
+ # - password=(password)
430
+ # -->
431
+ # ## Args
371
432
  #
372
- # == Args
433
+ # `v`
434
+ # : String
373
435
  #
374
- # +v+::
375
- # String
376
436
  #
377
- # == Description
437
+ # ## Description
378
438
  #
379
- # Public setter for the +password+ component
380
- # (with validation).
439
+ # Public setter for the `password` component (with validation).
381
440
  #
382
441
  # See also URI::Generic.check_password.
383
442
  #
384
- # == Usage
443
+ # ## Usage
385
444
  #
386
- # require 'uri'
445
+ # require 'uri'
387
446
  #
388
- # uri = URI.parse("http://john:S3nsit1ve@my.example.com")
389
- # uri.password = "V3ry_S3nsit1ve"
390
- # uri.to_s #=> "http://john:V3ry_S3nsit1ve@my.example.com"
447
+ # uri = URI.parse("http://john:S3nsit1ve@my.example.com")
448
+ # uri.password = "V3ry_S3nsit1ve"
449
+ # uri.to_s #=> "http://john:V3ry_S3nsit1ve@my.example.com"
391
450
  #
392
451
  def password=: (String? password) -> String?
393
452
 
394
- # Protected setter for the +user+ component, and +password+ if available
395
- # (with validation).
453
+ # <!--
454
+ # rdoc-file=lib/uri/generic.rb
455
+ # - set_userinfo(user, password = nil)
456
+ # -->
457
+ # Protected setter for the `user` component, and `password` if available (with
458
+ # validation).
396
459
  #
397
460
  # See also URI::Generic.userinfo=.
398
461
  #
399
- def set_userinfo: (String? user, ?String? password) -> [String?, String?]
462
+ def set_userinfo: (String? user, ?String? password) -> [ String?, String? ]
400
463
 
401
- # Protected setter for the user component +v+.
464
+ # <!--
465
+ # rdoc-file=lib/uri/generic.rb
466
+ # - set_user(v)
467
+ # -->
468
+ # Protected setter for the user component `v`.
402
469
  #
403
470
  # See also URI::Generic.user=.
404
471
  #
405
472
  def set_user: (String? v) -> String?
406
473
 
407
- # Protected setter for the password component +v+.
474
+ # <!--
475
+ # rdoc-file=lib/uri/generic.rb
476
+ # - set_password(v)
477
+ # -->
478
+ # Protected setter for the password component `v`.
408
479
  #
409
480
  # See also URI::Generic.password=.
410
481
  #
411
482
  def set_password: (String? v) -> String?
412
483
 
413
- # Returns the userinfo +ui+ as <code>[user, password]</code>
414
- # if properly formatted as 'user:password'.
484
+ # <!--
485
+ # rdoc-file=lib/uri/generic.rb
486
+ # - split_userinfo(ui)
487
+ # -->
488
+ # Returns the userinfo `ui` as `[user, password]` if properly formatted as
489
+ # 'user:password'.
490
+ #
415
491
  def split_userinfo: (String ui) -> Array[String | nil]
416
492
 
417
- # Escapes 'user:password' +v+ based on RFC 1738 section 3.1.
493
+ # <!--
494
+ # rdoc-file=lib/uri/generic.rb
495
+ # - escape_userpass(v)
496
+ # -->
497
+ # Escapes 'user:password' `v` based on RFC 1738 section 3.1.
498
+ #
418
499
  def escape_userpass: (String v) -> String
419
500
 
501
+ # <!--
502
+ # rdoc-file=lib/uri/generic.rb
503
+ # - userinfo()
504
+ # -->
420
505
  # Returns the userinfo, either as 'user' or 'user:password'.
506
+ #
421
507
  def userinfo: () -> String?
422
508
 
509
+ # <!--
510
+ # rdoc-file=lib/uri/generic.rb
511
+ # - user()
512
+ # -->
423
513
  # Returns the user component.
514
+ #
424
515
  def user: () -> String?
425
516
 
517
+ # <!--
518
+ # rdoc-file=lib/uri/generic.rb
519
+ # - password()
520
+ # -->
426
521
  # Returns the password component.
522
+ #
427
523
  def password: () -> String?
428
524
 
525
+ # <!--
526
+ # rdoc-file=lib/uri/generic.rb
527
+ # - check_host(v)
528
+ # -->
529
+ # Checks the host `v` component for RFC2396 compliance and against the
530
+ # URI::Parser Regexp for :HOST.
429
531
  #
430
- # Checks the host +v+ component for RFC2396 compliance
431
- # and against the URI::Parser Regexp for :HOST.
432
- #
433
- # Can not have a registry or opaque component defined,
434
- # with a host component defined.
532
+ # Can not have a registry or opaque component defined, with a host component
533
+ # defined.
435
534
  #
436
535
  def check_host: (String? v) -> true?
437
536
 
438
- # Protected setter for the host component +v+.
537
+ # <!--
538
+ # rdoc-file=lib/uri/generic.rb
539
+ # - set_host(v)
540
+ # -->
541
+ # Protected setter for the host component `v`.
439
542
  #
440
543
  # See also URI::Generic.host=.
441
544
  #
442
545
  def set_host: (String? v) -> String?
443
546
 
547
+ # <!--
548
+ # rdoc-file=lib/uri/generic.rb
549
+ # - host=(v)
550
+ # -->
551
+ # ## Args
444
552
  #
445
- # == Args
553
+ # `v`
554
+ # : String
446
555
  #
447
- # +v+::
448
- # String
449
556
  #
450
- # == Description
557
+ # ## Description
451
558
  #
452
- # Public setter for the host component +v+
453
- # (with validation).
559
+ # Public setter for the host component `v` (with validation).
454
560
  #
455
561
  # See also URI::Generic.check_host.
456
562
  #
457
- # == Usage
563
+ # ## Usage
458
564
  #
459
- # require 'uri'
565
+ # require 'uri'
460
566
  #
461
- # uri = URI.parse("http://my.example.com")
462
- # uri.host = "foo.com"
463
- # uri.to_s #=> "http://foo.com"
567
+ # uri = URI.parse("http://my.example.com")
568
+ # uri.host = "foo.com"
569
+ # uri.to_s #=> "http://foo.com"
464
570
  #
465
571
  def host=: (String? v) -> String?
466
572
 
573
+ # <!--
574
+ # rdoc-file=lib/uri/generic.rb
575
+ # - hostname()
576
+ # -->
467
577
  # Extract the host part of the URI and unwrap brackets for IPv6 addresses.
468
578
  #
469
- # This method is the same as URI::Generic#host except
470
- # brackets for IPv6 (and future IP) addresses are removed.
579
+ # This method is the same as URI::Generic#host except brackets for IPv6 (and
580
+ # future IP) addresses are removed.
471
581
  #
472
- # uri = URI("http://[::1]/bar")
473
- # uri.hostname #=> "::1"
474
- # uri.host #=> "[::1]"
582
+ # uri = URI("http://[::1]/bar")
583
+ # uri.hostname #=> "::1"
584
+ # uri.host #=> "[::1]"
475
585
  #
476
586
  def hostname: () -> String?
477
587
 
478
- # Sets the host part of the URI as the argument with brackets for IPv6 addresses.
588
+ # <!--
589
+ # rdoc-file=lib/uri/generic.rb
590
+ # - hostname=(v)
591
+ # -->
592
+ # Sets the host part of the URI as the argument with brackets for IPv6
593
+ # addresses.
479
594
  #
480
- # This method is the same as URI::Generic#host= except
481
- # the argument can be a bare IPv6 address.
595
+ # This method is the same as URI::Generic#host= except the argument can be a
596
+ # bare IPv6 address.
482
597
  #
483
- # uri = URI("http://foo/bar")
484
- # uri.hostname = "::1"
485
- # uri.to_s #=> "http://[::1]/bar"
598
+ # uri = URI("http://foo/bar")
599
+ # uri.hostname = "::1"
600
+ # uri.to_s #=> "http://[::1]/bar"
486
601
  #
487
- # If the argument seems to be an IPv6 address,
488
- # it is wrapped with brackets.
602
+ # If the argument seems to be an IPv6 address, it is wrapped with brackets.
489
603
  #
490
604
  def hostname=: (String? v) -> String?
491
605
 
606
+ # <!--
607
+ # rdoc-file=lib/uri/generic.rb
608
+ # - check_port(v)
609
+ # -->
610
+ # Checks the port `v` component for RFC2396 compliance and against the
611
+ # URI::Parser Regexp for :PORT.
492
612
  #
493
- # Checks the port +v+ component for RFC2396 compliance
494
- # and against the URI::Parser Regexp for :PORT.
495
- #
496
- # Can not have a registry or opaque component defined,
497
- # with a port component defined.
613
+ # Can not have a registry or opaque component defined, with a port component
614
+ # defined.
498
615
  #
499
616
  def check_port: ((String | Integer)? v) -> true?
500
617
 
501
- # Protected setter for the port component +v+.
618
+ # <!--
619
+ # rdoc-file=lib/uri/generic.rb
620
+ # - set_port(v)
621
+ # -->
622
+ # Protected setter for the port component `v`.
502
623
  #
503
624
  # See also URI::Generic.port=.
504
625
  #
505
626
  def set_port: ((String | Integer)? v) -> (String | Integer)?
506
627
 
628
+ # <!--
629
+ # rdoc-file=lib/uri/generic.rb
630
+ # - port=(v)
631
+ # -->
632
+ # ## Args
507
633
  #
508
- # == Args
634
+ # `v`
635
+ # : String
509
636
  #
510
- # +v+::
511
- # String
512
637
  #
513
- # == Description
638
+ # ## Description
514
639
  #
515
- # Public setter for the port component +v+
516
- # (with validation).
640
+ # Public setter for the port component `v` (with validation).
517
641
  #
518
642
  # See also URI::Generic.check_port.
519
643
  #
520
- # == Usage
644
+ # ## Usage
521
645
  #
522
- # require 'uri'
646
+ # require 'uri'
523
647
  #
524
- # uri = URI.parse("http://my.example.com")
525
- # uri.port = 8080
526
- # uri.to_s #=> "http://my.example.com:8080"
648
+ # uri = URI.parse("http://my.example.com")
649
+ # uri.port = 8080
650
+ # uri.to_s #=> "http://my.example.com:8080"
527
651
  #
528
652
  def port=: ((String | Integer)? v) -> (String | Integer)?
529
653
 
@@ -531,200 +655,254 @@ module URI
531
655
 
532
656
  def set_registry: (String v) -> nil
533
657
 
658
+ # <!--
659
+ # rdoc-file=lib/uri/generic.rb
660
+ # - registry=(v)
661
+ # -->
662
+ #
534
663
  def registry=: (String v) -> nil
535
664
 
665
+ # <!--
666
+ # rdoc-file=lib/uri/generic.rb
667
+ # - check_path(v)
668
+ # -->
669
+ # Checks the path `v` component for RFC2396 compliance and against the
670
+ # URI::Parser Regexp for :ABS_PATH and :REL_PATH.
536
671
  #
537
- # Checks the path +v+ component for RFC2396 compliance
538
- # and against the URI::Parser Regexp
539
- # for :ABS_PATH and :REL_PATH.
540
- #
541
- # Can not have a opaque component defined,
542
- # with a path component defined.
672
+ # Can not have a opaque component defined, with a path component defined.
543
673
  #
544
674
  def check_path: (String? v) -> true
545
675
 
546
- # Protected setter for the path component +v+.
676
+ # <!--
677
+ # rdoc-file=lib/uri/generic.rb
678
+ # - set_path(v)
679
+ # -->
680
+ # Protected setter for the path component `v`.
547
681
  #
548
682
  # See also URI::Generic.path=.
549
683
  #
550
684
  def set_path: (String? v) -> String?
551
685
 
686
+ # <!--
687
+ # rdoc-file=lib/uri/generic.rb
688
+ # - path=(v)
689
+ # -->
690
+ # ## Args
552
691
  #
553
- # == Args
692
+ # `v`
693
+ # : String
554
694
  #
555
- # +v+::
556
- # String
557
695
  #
558
- # == Description
696
+ # ## Description
559
697
  #
560
- # Public setter for the path component +v+
561
- # (with validation).
698
+ # Public setter for the path component `v` (with validation).
562
699
  #
563
700
  # See also URI::Generic.check_path.
564
701
  #
565
- # == Usage
702
+ # ## Usage
566
703
  #
567
- # require 'uri'
704
+ # require 'uri'
568
705
  #
569
- # uri = URI.parse("http://my.example.com/pub/files")
570
- # uri.path = "/faq/"
571
- # uri.to_s #=> "http://my.example.com/faq/"
706
+ # uri = URI.parse("http://my.example.com/pub/files")
707
+ # uri.path = "/faq/"
708
+ # uri.to_s #=> "http://my.example.com/faq/"
572
709
  #
573
710
  def path=: (String? v) -> String?
574
711
 
712
+ # <!--
713
+ # rdoc-file=lib/uri/generic.rb
714
+ # - query=(v)
715
+ # -->
716
+ # ## Args
575
717
  #
576
- # == Args
718
+ # `v`
719
+ # : String
577
720
  #
578
- # +v+::
579
- # String
580
721
  #
581
- # == Description
722
+ # ## Description
582
723
  #
583
- # Public setter for the query component +v+.
724
+ # Public setter for the query component `v`.
584
725
  #
585
- # == Usage
726
+ # ## Usage
586
727
  #
587
- # require 'uri'
728
+ # require 'uri'
588
729
  #
589
- # uri = URI.parse("http://my.example.com/?id=25")
590
- # uri.query = "id=1"
591
- # uri.to_s #=> "http://my.example.com/?id=1"
730
+ # uri = URI.parse("http://my.example.com/?id=25")
731
+ # uri.query = "id=1"
732
+ # uri.to_s #=> "http://my.example.com/?id=1"
592
733
  #
593
734
  def query=: (String? v) -> String?
594
735
 
736
+ # <!--
737
+ # rdoc-file=lib/uri/generic.rb
738
+ # - check_opaque(v)
739
+ # -->
740
+ # Checks the opaque `v` component for RFC2396 compliance and against the
741
+ # URI::Parser Regexp for :OPAQUE.
595
742
  #
596
- # Checks the opaque +v+ component for RFC2396 compliance and
597
- # against the URI::Parser Regexp for :OPAQUE.
598
- #
599
- # Can not have a host, port, user, or path component defined,
600
- # with an opaque component defined.
743
+ # Can not have a host, port, user, or path component defined, with an opaque
744
+ # component defined.
601
745
  #
602
746
  def check_opaque: (String? v) -> true?
603
747
 
604
- # Protected setter for the opaque component +v+.
748
+ # <!--
749
+ # rdoc-file=lib/uri/generic.rb
750
+ # - set_opaque(v)
751
+ # -->
752
+ # Protected setter for the opaque component `v`.
605
753
  #
606
754
  # See also URI::Generic.opaque=.
607
755
  #
608
756
  def set_opaque: (String? v) -> String?
609
757
 
758
+ # <!--
759
+ # rdoc-file=lib/uri/generic.rb
760
+ # - opaque=(v)
761
+ # -->
762
+ # ## Args
610
763
  #
611
- # == Args
764
+ # `v`
765
+ # : String
612
766
  #
613
- # +v+::
614
- # String
615
767
  #
616
- # == Description
768
+ # ## Description
617
769
  #
618
- # Public setter for the opaque component +v+
619
- # (with validation).
770
+ # Public setter for the opaque component `v` (with validation).
620
771
  #
621
772
  # See also URI::Generic.check_opaque.
622
773
  #
623
774
  def opaque=: (String? v) -> String?
624
775
 
776
+ # <!--
777
+ # rdoc-file=lib/uri/generic.rb
778
+ # - fragment=(v)
779
+ # -->
780
+ # Checks the fragment `v` component against the URI::Parser Regexp for
781
+ # :FRAGMENT.
625
782
  #
626
- # Checks the fragment +v+ component against the URI::Parser Regexp for :FRAGMENT.
627
- #
783
+ # ## Args
628
784
  #
629
- # == Args
785
+ # `v`
786
+ # : String
630
787
  #
631
- # +v+::
632
- # String
633
788
  #
634
- # == Description
789
+ # ## Description
635
790
  #
636
- # Public setter for the fragment component +v+
637
- # (with validation).
791
+ # Public setter for the fragment component `v` (with validation).
638
792
  #
639
- # == Usage
793
+ # ## Usage
640
794
  #
641
- # require 'uri'
795
+ # require 'uri'
642
796
  #
643
- # uri = URI.parse("http://my.example.com/?id=25#time=1305212049")
644
- # uri.fragment = "time=1305212086"
645
- # uri.to_s #=> "http://my.example.com/?id=25#time=1305212086"
797
+ # uri = URI.parse("http://my.example.com/?id=25#time=1305212049")
798
+ # uri.fragment = "time=1305212086"
799
+ # uri.to_s #=> "http://my.example.com/?id=25#time=1305212086"
646
800
  #
647
801
  def fragment=: (String? v) -> String?
648
802
 
649
- #
803
+ # <!--
804
+ # rdoc-file=lib/uri/generic.rb
805
+ # - hierarchical?()
806
+ # -->
650
807
  # Returns true if URI is hierarchical.
651
808
  #
652
- # == Description
809
+ # ## Description
653
810
  #
654
- # URI has components listed in order of decreasing significance from left to right,
655
- # see RFC3986 https://tools.ietf.org/html/rfc3986 1.2.3.
811
+ # URI has components listed in order of decreasing significance from left to
812
+ # right, see RFC3986 https://tools.ietf.org/html/rfc3986 1.2.3.
656
813
  #
657
- # == Usage
814
+ # ## Usage
658
815
  #
659
- # require 'uri'
816
+ # require 'uri'
660
817
  #
661
- # uri = URI.parse("http://my.example.com/")
662
- # uri.hierarchical?
663
- # #=> true
664
- # uri = URI.parse("mailto:joe@example.com")
665
- # uri.hierarchical?
666
- # #=> false
818
+ # uri = URI.parse("http://my.example.com/")
819
+ # uri.hierarchical?
820
+ # #=> true
821
+ # uri = URI.parse("mailto:joe@example.com")
822
+ # uri.hierarchical?
823
+ # #=> false
667
824
  #
668
825
  def hierarchical?: () -> bool
669
826
 
670
- #
827
+ # <!--
828
+ # rdoc-file=lib/uri/generic.rb
829
+ # - absolute?()
830
+ # -->
671
831
  # Returns true if URI has a scheme (e.g. http:// or https://) specified.
672
832
  #
673
833
  def absolute?: () -> bool
674
834
 
675
- #
676
- # Returns true if URI does not have a scheme (e.g. http:// or https://) specified.
835
+ # <!--
836
+ # rdoc-file=lib/uri/generic.rb
837
+ # - relative?()
838
+ # -->
839
+ # Returns true if URI does not have a scheme (e.g. http:// or https://)
840
+ # specified.
677
841
  #
678
842
  def relative?: () -> bool
679
843
 
680
- #
844
+ # <!--
845
+ # rdoc-file=lib/uri/generic.rb
846
+ # - split_path(path)
847
+ # -->
681
848
  # Returns an Array of the path split on '/'.
682
849
  #
683
850
  def split_path: (String path) -> Array[String]
684
851
 
685
- #
686
- # Merges a base path +base+, with relative path +rel+,
687
- # returns a modified base path.
852
+ # <!--
853
+ # rdoc-file=lib/uri/generic.rb
854
+ # - merge_path(base, rel)
855
+ # -->
856
+ # Merges a base path `base`, with relative path `rel`, returns a modified base
857
+ # path.
688
858
  #
689
859
  def merge_path: (String base, String rel) -> String
690
860
 
861
+ # <!--
862
+ # rdoc-file=lib/uri/generic.rb
863
+ # - merge!(oth)
864
+ # -->
865
+ # ## Args
691
866
  #
692
- # == Args
867
+ # `oth`
868
+ # : URI or String
693
869
  #
694
- # +oth+::
695
- # URI or String
696
870
  #
697
- # == Description
871
+ # ## Description
698
872
  #
699
873
  # Destructive form of #merge.
700
874
  #
701
- # == Usage
875
+ # ## Usage
702
876
  #
703
- # require 'uri'
877
+ # require 'uri'
704
878
  #
705
- # uri = URI.parse("http://my.example.com")
706
- # uri.merge!("/main.rbx?page=1")
707
- # uri.to_s # => "http://my.example.com/main.rbx?page=1"
879
+ # uri = URI.parse("http://my.example.com")
880
+ # uri.merge!("/main.rbx?page=1")
881
+ # uri.to_s # => "http://my.example.com/main.rbx?page=1"
708
882
  #
709
883
  def merge!: (string oth) -> String
710
884
 
885
+ # <!--
886
+ # rdoc-file=lib/uri/generic.rb
887
+ # - merge(oth)
888
+ # -->
889
+ # ## Args
711
890
  #
712
- # == Args
891
+ # `oth`
892
+ # : URI or String
713
893
  #
714
- # +oth+::
715
- # URI or String
716
894
  #
717
- # == Description
895
+ # ## Description
718
896
  #
719
897
  # Merges two URIs.
720
898
  #
721
- # == Usage
899
+ # ## Usage
722
900
  #
723
- # require 'uri'
901
+ # require 'uri'
724
902
  #
725
- # uri = URI.parse("http://my.example.com")
726
- # uri.merge("/main.rbx?page=1")
727
- # # => "http://my.example.com/main.rbx?page=1"
903
+ # uri = URI.parse("http://my.example.com")
904
+ # uri.merge("/main.rbx?page=1")
905
+ # # => "http://my.example.com/main.rbx?page=1"
728
906
  #
729
907
  def merge: (string oth) -> URI::Generic
730
908
 
@@ -734,140 +912,191 @@ module URI
734
912
  # :stopdoc:
735
913
  def route_from0: (String oth) -> Array[URI::Generic]
736
914
 
915
+ # <!--
916
+ # rdoc-file=lib/uri/generic.rb
917
+ # - route_from(oth)
918
+ # -->
919
+ # ## Args
737
920
  #
738
- # == Args
921
+ # `oth`
922
+ # : URI or String
739
923
  #
740
- # +oth+::
741
- # URI or String
742
924
  #
743
- # == Description
925
+ # ## Description
744
926
  #
745
927
  # Calculates relative path from oth to self.
746
928
  #
747
- # == Usage
929
+ # ## Usage
748
930
  #
749
- # require 'uri'
931
+ # require 'uri'
750
932
  #
751
- # uri = URI.parse('http://my.example.com/main.rbx?page=1')
752
- # uri.route_from('http://my.example.com')
753
- # #=> #<URI::Generic /main.rbx?page=1>
933
+ # uri = URI.parse('http://my.example.com/main.rbx?page=1')
934
+ # uri.route_from('http://my.example.com')
935
+ # #=> #<URI::Generic /main.rbx?page=1>
754
936
  #
755
937
  def route_from: (String oth) -> URI::Generic
756
938
 
939
+ # <!--
940
+ # rdoc-file=lib/uri/generic.rb
941
+ # - route_to(oth)
942
+ # -->
943
+ # ## Args
757
944
  #
758
- # == Args
945
+ # `oth`
946
+ # : URI or String
759
947
  #
760
- # +oth+::
761
- # URI or String
762
948
  #
763
- # == Description
949
+ # ## Description
764
950
  #
765
951
  # Calculates relative path to oth from self.
766
952
  #
767
- # == Usage
953
+ # ## Usage
768
954
  #
769
- # require 'uri'
955
+ # require 'uri'
770
956
  #
771
- # uri = URI.parse('http://my.example.com')
772
- # uri.route_to('http://my.example.com/main.rbx?page=1')
773
- # #=> #<URI::Generic /main.rbx?page=1>
957
+ # uri = URI.parse('http://my.example.com')
958
+ # uri.route_to('http://my.example.com/main.rbx?page=1')
959
+ # #=> #<URI::Generic /main.rbx?page=1>
774
960
  #
775
961
  def route_to: (String oth) -> URI::Generic
776
962
 
777
- #
963
+ # <!--
964
+ # rdoc-file=lib/uri/generic.rb
965
+ # - normalize()
966
+ # -->
778
967
  # Returns normalized URI.
779
968
  #
780
- # require 'uri'
969
+ # require 'uri'
781
970
  #
782
- # URI("HTTP://my.EXAMPLE.com").normalize
783
- # #=> #<URI::HTTP http://my.example.com/>
971
+ # URI("HTTP://my.EXAMPLE.com").normalize
972
+ # #=> #<URI::HTTP http://my.example.com/>
784
973
  #
785
974
  # Normalization here means:
786
975
  #
787
- # * scheme and host are converted to lowercase,
788
- # * an empty path component is set to "/".
976
+ # * scheme and host are converted to lowercase,
977
+ # * an empty path component is set to "/".
789
978
  #
790
979
  def normalize: () -> untyped
791
980
 
792
- #
981
+ # <!--
982
+ # rdoc-file=lib/uri/generic.rb
983
+ # - normalize!()
984
+ # -->
793
985
  # Destructive version of #normalize.
794
986
  #
795
987
  def normalize!: () -> untyped
796
988
 
797
- #
989
+ # <!--
990
+ # rdoc-file=lib/uri/generic.rb
991
+ # - to_s()
992
+ # -->
798
993
  # Constructs String from URI.
799
994
  #
800
995
  def to_s: () -> String
801
996
 
802
- #
997
+ # <!--
998
+ # rdoc-file=lib/uri/generic.rb
999
+ # - ==(oth)
1000
+ # -->
803
1001
  # Compares two URIs.
804
1002
  #
805
1003
  def ==: (URI::Generic oth) -> bool
806
1004
 
1005
+ # <!--
1006
+ # rdoc-file=lib/uri/generic.rb
1007
+ # - hash()
1008
+ # -->
1009
+ #
807
1010
  def hash: () -> Integer
808
1011
 
1012
+ # <!--
1013
+ # rdoc-file=lib/uri/generic.rb
1014
+ # - eql?(oth)
1015
+ # -->
1016
+ #
809
1017
  def eql?: (URI::Generic oth) -> bool
810
1018
 
1019
+ # <!--
1020
+ # rdoc-file=lib/uri/generic.rb
1021
+ # - component_ary()
1022
+ # -->
811
1023
  # Returns an Array of the components defined from the COMPONENT Array.
1024
+ #
812
1025
  def component_ary: () -> Array[nil | String | Integer]
813
1026
 
814
- # == Args
1027
+ # <!--
1028
+ # rdoc-file=lib/uri/generic.rb
1029
+ # - select(*components)
1030
+ # -->
1031
+ # ## Args
1032
+ #
1033
+ # `components`
1034
+ # : Multiple Symbol arguments defined in URI::HTTP.
815
1035
  #
816
- # +components+::
817
- # Multiple Symbol arguments defined in URI::HTTP.
818
1036
  #
819
- # == Description
1037
+ # ## Description
820
1038
  #
821
1039
  # Selects specified components from URI.
822
1040
  #
823
- # == Usage
1041
+ # ## Usage
824
1042
  #
825
- # require 'uri'
1043
+ # require 'uri'
826
1044
  #
827
- # uri = URI.parse('http://myuser:mypass@my.example.com/test.rbx')
828
- # uri.select(:userinfo, :host, :path)
829
- # # => ["myuser:mypass", "my.example.com", "/test.rbx"]
1045
+ # uri = URI.parse('http://myuser:mypass@my.example.com/test.rbx')
1046
+ # uri.select(:userinfo, :host, :path)
1047
+ # # => ["myuser:mypass", "my.example.com", "/test.rbx"]
830
1048
  #
831
1049
  def select: (*Symbol components) -> Array[nil | String | Integer]
832
1050
 
1051
+ # <!--
1052
+ # rdoc-file=lib/uri/generic.rb
1053
+ # - inspect()
1054
+ # -->
1055
+ #
833
1056
  def inspect: () -> String
834
1057
 
1058
+ # <!--
1059
+ # rdoc-file=lib/uri/generic.rb
1060
+ # - coerce(oth)
1061
+ # -->
1062
+ # ## Args
835
1063
  #
836
- # == Args
1064
+ # `v`
1065
+ # : URI or String
837
1066
  #
838
- # +v+::
839
- # URI or String
840
1067
  #
841
- # == Description
1068
+ # ## Description
842
1069
  #
843
- # Attempts to parse other URI +oth+,
844
- # returns [parsed_oth, self].
1070
+ # Attempts to parse other URI `oth`, returns [parsed_oth, self].
845
1071
  #
846
- # == Usage
1072
+ # ## Usage
847
1073
  #
848
- # require 'uri'
1074
+ # require 'uri'
849
1075
  #
850
- # uri = URI.parse("http://my.example.com")
851
- # uri.coerce("http://foo.com")
852
- # #=> [#<URI::HTTP http://foo.com>, #<URI::HTTP http://my.example.com>]
1076
+ # uri = URI.parse("http://my.example.com")
1077
+ # uri.coerce("http://foo.com")
1078
+ # #=> [#<URI::HTTP http://foo.com>, #<URI::HTTP http://my.example.com>]
853
1079
  #
854
1080
  def coerce: (URI::Generic | String oth) -> Array[URI::Generic]
855
1081
 
856
- # Returns a proxy URI.
857
- # The proxy URI is obtained from environment variables such as http_proxy,
858
- # ftp_proxy, no_proxy, etc.
859
- # If there is no proper proxy, nil is returned.
1082
+ # <!--
1083
+ # rdoc-file=lib/uri/generic.rb
1084
+ # - find_proxy(env=ENV)
1085
+ # -->
1086
+ # Returns a proxy URI. The proxy URI is obtained from environment variables such
1087
+ # as http_proxy, ftp_proxy, no_proxy, etc. If there is no proper proxy, nil is
1088
+ # returned.
1089
+ #
1090
+ # If the optional parameter `env` is specified, it is used instead of ENV.
860
1091
  #
861
- # If the optional parameter +env+ is specified, it is used instead of ENV.
1092
+ # Note that capitalized variables (HTTP_PROXY, FTP_PROXY, NO_PROXY, etc.) are
1093
+ # examined, too.
862
1094
  #
863
- # Note that capitalized variables (HTTP_PROXY, FTP_PROXY, NO_PROXY, etc.)
864
- # are examined, too.
1095
+ # But http_proxy and HTTP_PROXY is treated specially under CGI environment. It's
1096
+ # because HTTP_PROXY may be set by Proxy: header. So HTTP_PROXY is not used.
1097
+ # http_proxy is not used too if the variable is case insensitive. CGI_HTTP_PROXY
1098
+ # can be used instead.
865
1099
  #
866
- # But http_proxy and HTTP_PROXY is treated specially under CGI environment.
867
- # It's because HTTP_PROXY may be set by Proxy: header.
868
- # So HTTP_PROXY is not used.
869
- # http_proxy is not used too if the variable is case insensitive.
870
- # CGI_HTTP_PROXY can be used instead.
871
1100
  def find_proxy: (?String env) -> (nil | URI::Generic)
872
1101
 
873
1102
  def self.use_proxy?: (String hostname, String addr, Integer port, String no_proxy) -> bool