[ruby-core:88407] [Ruby trunk Feature#14975] String#append without changing receiver's encoding

From: shyouhei@...
Date: 2018-08-10 01:16:58 UTC
List: ruby-core #88407
SXNzdWUgIzE0OTc1IGhhcyBiZWVuIHVwZGF0ZWQgYnkgc2h5b3VoZWkgKFNoeW91aGVpIFVyYWJl
KS4KCgppb3F1YXRpeCAoU2FtdWVsIFdpbGxpYW1zKSB3cm90ZToKPiA+IENoYW5naW5nIFN0cmlu
ZyM8PCBhbmQgU3RyaW5nI2NvbmNhdCBpcyBub3QgYWNjZXB0YWJsZS4KPiAKPiBTaW5jZSB0aGUg
Y3VycmVudCBiZWhhdmlvdXIgaXMgdW5kZXJzcGVjaWZpZWQsIEkgZmVlbCBsaWtlIHdlIHNob3Vs
ZCBhdCBsZWFzdCBjb25zaWRlciBpdCBhcyBhbiBvcHRpb24uCj4gCj4gUHJhY3RpY2FsbHkgc3Bl
YWtpbmcsIEkgZG9uJ3QgZXhwZWN0IHRoZSBlbmNvZGluZyB0byBjaGFuZ2Ugb24gdGhlIHJlY2Vp
dmVyLiBJdCdzIHN1cnByaXNpbmcsIHVuZXhwZWN0ZWQgYmVoYXZpb3VyLgo+IAo+IEkgYWN0dWFs
bHkgdGhpbmsgdGhhdCB0aGUgYXJndW1lbnRzIHNob3VsZCBiZSBjb252ZXJ0ZWQgaW50byB0aGUg
ZW5jb2Rpbmcgb2YgdGhlIHJlY2VpdmVyIGFuZCBhcHBlbmRlZCwgbm90IGNoYW5naW5nIHRoZSBy
ZWNlaXZlcnMgZW5jb2RpbmcuIEluIHRoZSBjYXNlIHRoZSBjb252ZXJzaW9uIGZhaWxzLCBpdCBz
aG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLgoKVGhvdWdoIHBlcmhhcHMgbm90IGRvY3VtZW50ZWQg
YXQgdGhlIFN0cmluZyM8PCdzIHBsYWNlLCB0aGlzIGlzIG5vdCBob3cgb3VyIE0xN04gaXMgZGVz
aWduZWQgaW4gcHJpbmNpcGxlLiAgVGhlcmUgaXMgbm8gYXV0b21hdGljIGVuY29kaW5nIGNvbnZl
cnNpb24uICBQcm9ncmFtbWVycyBzaG91bGQgYmUgYXdhcmUgb2YgdGhlIGZhY3QgdGhhdCBlbmNv
ZGluZ3MgZG8gZXhpc3QsIGFuZCBzaG91bGQgdHJlYXQgdGhlbSBieSB0aGVpciBvd24uICBJZiB5
b3Ugd2FudCB0byBjaGFuZ2UgdGhpcyB5b3UgbmVlZCBhIGNvbmNyZXRlIHJlYXNvbiB3aHksIG5v
dCBqdXN0IGJlY2F1c2UgaXQgX3NlZW1zXyBoYW5keS4KClRoYXQgc2FpZCwgeW91IGFyZSBub3Qg
cmVxdWVzdGluZyB0byAiY29udmVydCIgdGhlIHN0cmluZyBjb250ZW50cyBidXQganVzdCBpZ25v
cmUgdGhlaXIgZW5jb2RpbmdzLiAgVGhpcyBpcyBwb3NzaWJsZSBJIHRoaW5rLCBkZXBlbmRpbmcg
b24gb3BlcmF0aW9ucy4gIFNvIG15IGFkdmljZSBoZXJlIGlzOiBkb24ndCBleHBhbmQgeW91ciBi
YXR0bGUgZnJvbnQuICBTdGljayB0byB0aGUgaWRlYSB0byBwdXNoIHRoZSBmZWF0dXJlIHlvdSB3
YW50LCB0aGF0IGlzLCBhcHBlbmRpbmcgYXJiaXRyYXJ5IHN0cmluZyB0byBhIGJpbmFyeS4KCi0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KRmVhdHVyZSAjMTQ5NzU6IFN0
cmluZyNhcHBlbmQgd2l0aG91dCBjaGFuZ2luZyByZWNlaXZlcidzIGVuY29kaW5nCmh0dHBzOi8v
YnVncy5ydWJ5LWxhbmcub3JnL2lzc3Vlcy8xNDk3NSNjaGFuZ2UtNzM0NTkKCiogQXV0aG9yOiBp
b3F1YXRpeCAoU2FtdWVsIFdpbGxpYW1zKQoqIFN0YXR1czogT3BlbgoqIFByaW9yaXR5OiBOb3Jt
YWwKKiBBc3NpZ25lZTogCiogVGFyZ2V0IHZlcnNpb246IAotLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tCkknbSBub3Qgc3VyZSB3aGVyZSB0aGlzIGZpdHMgaW4sIGJ1dCBp
biBvcmRlciB0byBhdm9pZCBnYXJiYWdlIGFuZCBzdXBlcmZsdW91cyBmdW5jdGlvbiBjYWxscywg
aXMgaXQgcG9zc2libGUgdGhhdCBgU3RyaW5nIzw8YCwgYFN0cmluZyNjb25jYXRgIG9yIHRoZSAo
cHJvcG9zZWQpIGBTdHJpbmcjYXBwZW5kYCBjYW4gYXZvaWQgY2hhbmdpbmcgdGhlIGVuY29kaW5n
IG9mIHRoZSByZWNlaXZlcj8KClJpZ2h0IG5vdyBpdCdzIHZlcnkgdHJpY2t5IHRvIGRvIHRoaXMg
aW4gYSB3YXkgdGhhdCBkb2Vzbid0IHJlcXVpcmUgZXh0cmEgYWxsb2NhdGlvbnMuIEhlcmUgaXMg
d2hhdCBJIGRvOgoKYGBgcnVieQpjbGFzcyBCdWZmZXIgPCBTdHJpbmcKCUJJTkFSWSA9IEVuY29k
aW5nOjpCSU5BUlkKCQoJZGVmIGluaXRpYWxpemUKCQlzdXBlcgoJCQoJCWZvcmNlX2VuY29kaW5n
KEJJTkFSWSkKCWVuZAoJCglkZWYgPDwgc3RyaW5nCgkJaWYgc3RyaW5nLmVuY29kaW5nID09IEJJ
TkFSWQoJCQlzdXBlcihzdHJpbmcpCgkJZWxzZQoJCQlzdXBlcihzdHJpbmcuYikgIyBSZXF1aXJl
cyBleHRyYSBhbGxvY2F0aW9uLgoJCWVuZAoJCQoJCXJldHVybiBzZWxmCgllbmQKCQoJYWxpYXMg
Y29uY2F0IDw8CmVuZApgYGAKCldoZW4gdGhlIHJlY2VpdmVyIGlzIGJpbmFyeSwgYnV0IGNvbnRh
aW5zIGJ5dGUgc2VxdWVuY2VzLCBhcHBlbmRpbmcgVVRGXzggY2FuIGZhaWw6CgpgYGAKIkZvb2Jh
ciIuYiA8PCAiRsO4w7hiYXIiCj0+ICJGb29iYXJGw7jDuGJhciIKCj4gIkbDuMO4YmFyIi5iIDw8
ICJGw7jDuGJhciIKRW5jb2Rpbmc6OkNvbXBhdGliaWxpdHlFcnJvcjogaW5jb21wYXRpYmxlIGNo
YXJhY3RlciBlbmNvZGluZ3M6IEFTQ0lJLThCSVQgYW5kIFVURi04CmBgYAoKU28sIGl0J3Mgbm90
IHBvc3NpYmxlIHRvIGFwcGVuZCBkYXRhLCBnZW5lcmFsbHksIGFuZCB0aGVuIGNhbGwgYGZvcmNl
X2VuY29kaW5nKEVuY29kaW5nOjpCSU5BUlkpYC4gT25lIG11c3QgZW5zdXJlIHRoZSBzdHJpbmcg
aXMgYmluYXJ5IGJlZm9yZSBhcHBlbmRpbmcgaXQuCgpJdCB3b3VsZCBiZSBuaWNlIGlmIHRoZXJl
IHdhcyBhIHNvbHV0aW9uIHdoaWNoIGRpZG4ndCByZXF1aXJlIGFkZGl0aW9uYWwgYWxsb2NhdGlv
bnMvY29waWVzL2xpbmVhciBzY2FucyBmb3Igd2hhdCBzaG91bGQgYmFzaWNhbGx5IGJlIGEgYG1l
bWNweWAuCgpTZWUgYWxzbzogaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvaXNzdWVzLzE0MDMz
IGFuZCBodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1ZXMvMTM2MjYjbm90ZS0zCgpUaGVy
ZSBhcmUgdHdvIG9wdGlvbnMgdG8gZml4IHRoaXM6CgoxLyBEb24ndCBjaGFuZ2UgcmVjZWl2ZXIg
ZW5jb2RpbmcgaW4gYW55IGNhc2UuCjIvIEFwcGx5IDEsIGJ1dCBvbmx5IHdoZW4gcmVjZWl2ZXIg
aXMgdXNpbmcgYEVuY29kaW5nOjpCSU5BUllgCgoKCgotLSAKaHR0cHM6Ly9idWdzLnJ1YnktbGFu
Zy5vcmcvCgpVbnN1YnNjcmliZTogPG1haWx0bzpydWJ5LWNvcmUtcmVxdWVzdEBydWJ5LWxhbmcu
b3JnP3N1YmplY3Q9dW5zdWJzY3JpYmU+CjxodHRwOi8vbGlzdHMucnVieS1sYW5nLm9yZy9jZ2kt
YmluL21haWxtYW4vb3B0aW9ucy9ydWJ5LWNvcmU+Cg==

In This Thread

Prev Next