[ruby-dev:50454] [Ruby trunk Feature#14417] String#sub / String#gsub に『キーが Symbol の Hash』を渡せるようにする提案

From: duerst@...
Date: 2018-01-31 11:06:35 UTC
List: ruby-dev #50454
SXNzdWUgIzE0NDE3IGhhcyBiZWVuIHVwZGF0ZWQgYnkgZHVlcnN0IChNYXJ0aW4gRMO8cnN0KS4K
CgpgZ3N1YmAgd2l0aCBIYXNoIGlzIHVzZWQgaW4gc29tZSBjb250ZXh0cyB3aGVyZSBoaWdoIHBl
cmZvcm1hbmNlIGlzIG9mIGludGVyZXN0LiBBbiBleGFtcGxlIGlzIGBsaWIvdW5pY29kZV9ub3Jt
YWxpemUvbm9ybWFsaXplLnJiYC4gVGhpcyBwcm9wb3NhbCB3b3VsZCBtYWtlIHRoZXNlIGNhc2Vz
IGxlc3MgZWZmaWNpZW50LCBmb3IgdGhlIGJlbmVmaXQgb2YgcGVvcGxlIHdobyBjYW4ndCBrZWVw
IFN5bWJvbHMgYW5kIFN0cmluZ3MgYXBhcnQuCgpBcyBkaXNjdXNzZWQgaW4gYW5vdGhlciBpc3N1
ZSwgYGI6ICdCJywgYzogJ0MnYCBpcyBub3QgYSBzaG9ydGN1dCBmb3IgYCdiJz0+J0InLCAnYyc9
PidDJ2AuIFdlIGFscmVhZHkgaGF2ZSBtZXRob2RzIHRvIGNoYW5nZSBIYXNoIGtleXMgKG9yIHZh
bHVlcyksIGFuZCB3ZSBwcm9iYWJseSBuZWVkIG1vcmUgb2YgdGhlbSwgYnV0IEkgdGhpbmsgd2Ug
ZG9uJ3QgbmVlZCBtb3JlIG1ldGhvZHMgdGhhdCBhY2NlcHRzIHN0cmluZ3MgYW5kIHN5bWJvbHMg
aW5kZXRlcm1pbmF0ZWx5LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LQpGZWF0dXJlICMxNDQxNzogU3RyaW5nI3N1YiAvIFN0cmluZyNnc3ViIOOBq+OAjuOCreODvOOB
jCBTeW1ib2wg44GuIEhhc2jjgI/jgpLmuKHjgZvjgovjgojjgYbjgavjgZnjgovmj5DmoYgKaHR0
cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvaXNzdWVzLzE0NDE3I2NoYW5nZS03MDA2OAoKKiBBdXRo
b3I6IG9zeW8gKG1hbmdhIG9zeW8pCiogU3RhdHVzOiBGZWVkYmFjawoqIFByaW9yaXR5OiBOb3Jt
YWwKKiBBc3NpZ25lZTogCiogVGFyZ2V0IHZlcnNpb246IAotLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tCiMjIOamguimgQoKYFN0cmluZyNzdWJgIC8gYFN0cmluZyNnc3Vi
YCDjgavjgI7jgq3jg7zjgYwgYFN5bWJvbGAg44GuIGBIYXNoYOOAj+OCkua4oeOBl+OBn+WgtOWQ
iOOBp+OCgiBgU3RyaW5nYCDjga7loLTlkIjjgajlkIzmp5jjgavnva7jgY3mj5vjgYjjgovjgIIK
CgojIyDnj77ooYzjga7li5XkvZwKCmBgYHJ1YnkKaGFzaCA9IHsnYic9PidCJywgJ2MnPT4nQyd9
CnAgImFiY2FiYyIuZ3N1YigvW2JjXS8sIGhhc2gpICAgICAjPT4gImFCQ2FCQyIKCiMg44Kt44O8
IOOBjCBTeW1ib2wg44GuIEhhc2gg44Gv572u44GN5o+b44GI44KJ44KM44Gq44GECmhhc2ggPSB7
IGI6ICdCJywgYzogJ0MnIH0KcCAiYWJjYWJjIi5nc3ViKC9bYmNdLywgaGFzaCkgICAgICM9PiAi
YWEiCgojIOOCreODvCDjgYwgU3ltYm9sIOOBriBIYXNoIOOBryBTdHJpbmcg44Gr5aSJ5o+b44GZ
44KL5b+F6KaB44GM44GC44KLCnAgImFiY2FiYyIuZ3N1YigvW2JjXS8sIGhhc2gudHJhbnNmb3Jt
X2tleXMoJjp0b19zKSkgICAgICM9PiAiYUJDYUJDIgpgYGAKCgojIyDmj5DmoYjjgZnjgovli5Xk
vZwKCmBgYHJ1YnkKIyDjgq3jg7zjgYwgU3RyaW5nIOOBruWgtOWQiOOBr+ePvuihjOe2reaMgQpo
YXNoID0geydiJz0+J0InLCAnYyc9PidDJ30KcCAiYWJjYWJjIi5nc3ViKC9bYmNdLywgaGFzaCkg
ICAgICM9PiAiYUJDYUJDIgoKaGFzaCA9IHsgYjogJ0InLCBjOiAnQycgfQoKIyAkJiDjga/li5Xn
moTjgafjgYLjgovjgbnjgY3jgarjga7jgacgU3RyaW5nIOOBruOBvuOBvgpwICJhYmNhYmMiLmdz
dWIoL1tiY10vKXtoYXNoWyQmXX0gIz0+ICJhYSIKCiMg44OW44Ot44OD44Kv44Gu5byV5pWw44Gv
5YuV55qE44Gn44GC44KL44G544GN44Gq44Gu44GnIFN0cmluZyDjga7jgb7jgb4KcCAiYWJjYWJj
Ii5nc3ViKC9bYmNdLyl7IHxzfCBoYXNoW3NdIH0gIz0+IGEiCgojIEhhc2gg44KS55u05o6l5rih
44GX44Gf5aC05ZCI44Gu44G/44Kt44O844GMIFN5bWJvbCDjgafjgoLoqLHlrrnjgZnjgosKcCAi
YWJjYWJjIi5nc3ViKC9bYmNdLywgaGFzaCkgICAgICM9PiAiYUJDYUJDIgpgYGAKCgojIyDliKnn
grkKCiog44Kt44O844KSIFN5bWJvbCDjgafmm7jjgY/jgZPjgajjgpLmjqjlpajjgZfjgabjgYTj
govjgrPjg7zjg4fjgqPjg7PjgrDopo/ntITjgYzjgYLjgosKICAqIFtydWJ5LXN0eWxlLWd1aWRl
L1JFQURNRS5qYS5tZCBhdCBqYXBhbmVzZSDCtyBmb3J0aXNzaW1vMTk5Ny9ydWJ5LXN0eWxlLWd1
aWRlIMK3IEdpdEh1Yl0oaHR0cHM6Ly9naXRodWIuY29tL2ZvcnRpc3NpbW8xOTk3L3J1Ynktc3R5
bGUtZ3VpZGUvYmxvYi9qYXBhbmVzZS9SRUFETUUuamEubWQjc3ltYm9scy1hcy1rZXlzKQoqIOOC
reODvOOCkiBTeW1ib2wg44Gn5a6a576p44GZ44KL5pa544GMIEhhc2gg44KS5pu444GE44Gm44GE
44Gm5rCX5oyB44Gh44GM44GE44GECgoKIyMg6Kqy6aGMCgoqIGBTdHJpbmdgIOOBqCBgU3ltYm9s
YCDjga7kuKHmlrnjga7jgq3jg7zjgYzjgYLjgaPjgZ/loLTlkIjjganjgYbjgZnjgovjgYsKICAq
IGAiYWJjYWJjIi5zdWIoL1tiY10vLCB7ICJiIiA9PiAiQSIsIGI6ICJDIiB9KSAgIyA9PiA/Pz9g
CiAgKiDnj77nirbjga8gYFN0cmluZ2Ag44KS5YSq5YWI44GX44Gm44GE44KLCiAgKiDjgZ3jgozk
u6XliY3jgasgYFN0cmluZ2Ag44GoIGBTeW1ib2xgIOOBjOa3t+OBluOBo+OBpuOBhOOCiyBIYXNo
IOOBr+OBiuOBi+OBl+OBhOOBruOBp+OBr+OBquOBhOOBoOOCjeOBhuOBiwogICog6K2m5ZGK44KS
5Ye644GZ44Go44GL77yfCgoKIyMgYFN0cmluZyNnc3ViYCDjga7jg6bjg7zjgrnjgrHjg7zjgrnj
garjgakKCmBgYHJ1YnkKIyBodHRwOi8vYmF0c292LmNvbS9hcnRpY2xlcy8yMDEzLzEwLzAzL3Vz
aW5nLXJ1YnlzLWdzdWItd2l0aC1hLWhhc2gvCmRlZiBnZWVraWZ5KHN0cmluZykKICBzdHJpbmcu
Z3N1YigvW2xldG9dLywgbDogJzEnLCBlOiAnMycsIHQ6ICc3JywgbzogJzAnKQplbmQKCnAgZ2Vl
a2lmeSgnbGVldCcpICMgPT4gJzEzMzcnCnAgZ2Vla2lmeSgnbm9vYicpICMgPT4gJ24wMGInCgoK
ZGVmIGRvY3Rvcml6ZShzdHJpbmcpCiAgc3RyaW5nLmdzdWIoL00oaXN0ZSk/ci8sIE1pc3Rlcjog
J0RvY3RvcicsIE1yOiAnRHInKQplbmQKCnAgZG9jdG9yaXplKCdNaXN0ZXIgRnJlZXplJykgIyA9
PiAnRG9jdG9yIEZyZWV6ZScKcCBkb2N0b3JpemUoJ01yIFNtaXRoJykgICAjID0+ICdEciBTbWl0
aCcKYGBgCgpgYGBydWJ5CiMgaHR0cHM6Ly9jb2RlcndhbGwuY29tL3AvdDR5N2N3L3J1YnktZ3N1
Yi13aXRoLWEtaGFzaC1vci1ibG9jawphbWlub19hY2lkX2hhc2ggPSB7IEE6ICdBbGEnLCBSOiAn
QXJnJywgTjogJ0FzbicgfQoKcCAiUjIzMkEiLmdzdWIoL1tBLVpdLywgYW1pbm9fYWNpZF9oYXNo
KQojID0+ICJBcmcyMzJBbGEiCmBgYAoKYGBgcnVieQojIGh0dHBzOi8vcWlpdGEuY29tL3NjaXZv
bGEvaXRlbXMvNDE2MTU1YzMwN2VjMjlhMzdiOGYKaGFzaCA9IHsKICAnJic6ICImYW1wIiwKICAn
PCc6ICImbHQiLAogICc+JzogIiZndCIsCn0KCnAgIjxRJkE+Ii5nc3ViKC9bJjw+XS8sIGhhc2gp
CiMgPT4gIiZsdFEmYW1wQSZndCIKYGBgCgpgYGBydWJ5CiMgaHR0cHM6Ly9xaWl0YS5jb20vcG9j
YXJpL2l0ZW1zLzM0ODU1YTliMDdlYTUwMDZmZTgwCmhhc2ggPSB7CiAgJyN0byMnOiAidGFybyIs
CiAgJyNmcm9tIyc6ICJqaXJvIiwKfQoKdGVtcGxhdGUgPSA8PEVPUwpoZWxsbywgI3RvIy4KbWVz
c2FnZSBmcm9tICNmcm9tIy4KRU9TCgpwdXRzIHRlbXBsYXRlLmdzdWIoLyMuKiMvLCBoYXNoKQoj
ID0+IGhlbGxvLCB0YXJvLgojIG1lc3NhZ2UgZnJvbSBqaXJvLgpgYGAKCuOBneOBruS7luOAgeWF
t+S9k+eahOOBquODpuODvOOCueOCseODvOOCueOCkuaAneOBhOOBpOOBhOOBn+aWueOBjOOBhOOC
jOOBsOOCs+ODoeODs+ODiOOBhOOBn+OBoOOBkeOCi+OBqOWKqeOBi+OCiuOBvuOBmeOAggoKLS0t
RmlsZXMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpzdHJpbmdfc3ViX3dpdGhfc3lt
Ym9sX2tleS5wYXRjaCAoMi43MSBLQikKCgotLSAKaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcv
Cg==

In This Thread

Prev Next