[ruby/uri] String literals are frozen now

https://github.com/ruby/uri/commit/0b6ad60af6
This commit is contained in:
Nobuyoshi Nakada 2023-06-26 00:39:27 +09:00 committed by git
parent c21436cb35
commit 8307627245

View File

@ -83,9 +83,9 @@ module URI
uri.ascii_only? or uri.ascii_only? or
raise InvalidURIError, "URI must be ascii only #{uri.dump}" raise InvalidURIError, "URI must be ascii only #{uri.dump}"
if m = RFC3986_URI.match(uri) if m = RFC3986_URI.match(uri)
query = m["query".freeze] query = m["query"]
scheme = m["scheme".freeze] scheme = m["scheme"]
opaque = m["path-rootless".freeze] opaque = m["path-rootless"]
if opaque if opaque
opaque << "?#{query}" if query opaque << "?#{query}" if query
[ scheme, [ scheme,
@ -96,35 +96,35 @@ module URI
nil, # path nil, # path
opaque, opaque,
nil, # query nil, # query
m["fragment".freeze] m["fragment"]
] ]
else # normal else # normal
[ scheme, [ scheme,
m["userinfo".freeze], m["userinfo"],
m["host".freeze], m["host"],
m["port".freeze], m["port"],
nil, # registry nil, # registry
(m["path-abempty".freeze] || (m["path-abempty"] ||
m["path-absolute".freeze] || m["path-absolute"] ||
m["path-empty".freeze]), m["path-empty"]),
nil, # opaque nil, # opaque
query, query,
m["fragment".freeze] m["fragment"]
] ]
end end
elsif m = RFC3986_relative_ref.match(uri) elsif m = RFC3986_relative_ref.match(uri)
[ nil, # scheme [ nil, # scheme
m["userinfo".freeze], m["userinfo"],
m["host".freeze], m["host"],
m["port".freeze], m["port"],
nil, # registry, nil, # registry,
(m["path-abempty".freeze] || (m["path-abempty"] ||
m["path-absolute".freeze] || m["path-absolute"] ||
m["path-noscheme".freeze] || m["path-noscheme"] ||
m["path-empty".freeze]), m["path-empty"]),
nil, # opaque nil, # opaque
m["query".freeze], m["query"],
m["fragment".freeze] m["fragment"]
] ]
else else
raise InvalidURIError, "bad URI(is not URI?): #{uri.inspect}" raise InvalidURIError, "bad URI(is not URI?): #{uri.inspect}"