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

From: eregontp@...
Date: 2018-08-27 09:46:19 UTC
List: ruby-core #88681
SXNzdWUgIzE0OTc1IGhhcyBiZWVuIHVwZGF0ZWQgYnkgRXJlZ29uIChCZW5vaXQgRGFsb3plKS4K
CgpJIGFncmVlIHRoZSBjdXJyZW50IGJlaGF2aW9yIGZvciBhcHBlbmRpbmcgd2l0aCBiaW5hcnkg
c3RyaW5ncyBpcyBzdXJwcmlzaW5nLgpFc3BlY2lhbGx5IHNpbmNlIHRoZSByZXN1bHQgb2YgdGhl
IG9wZXJhdGlvbiBkZXBlbmRzIG9uIHdoZXRoZXIgdGhlIHJlY2VpdmVyIGFuZCBhcmd1bWVudCBh
cmUgNy1iaXQgb3Igbm90LgoKSG93ZXZlciwgaXQgbWFrZXMgc2Vuc2UgdG8gbWUgdG8gY2hhbmdl
IHRoZSByZWNlaXZlciBlbmNvZGluZyBpbiBhIGNhc2Ugc3VjaCBhcwoKICAgIHVzX2FzY2lpX3N0
cmluZyArIHV0Zjhfc3RyaW5nCgpNYXliZSB0aGlzIG5ldyBtZXRob2QgYmUgbmFtZWQgImJ5dGVh
cHBlbmQiIHNpbmNlIGl0IGRvZXNuJ3QgY2FyZSBhYm91dCBlbmNvZGluZ3MgaWYgdGhlIHJlY2Vp
dmVyIGlzIGJpbmFyeT8KCklzIHRoZXJlIGEgdXNlLWNhc2UgZm9yIHVzaW5nIHRoaXMgbmV3IG1l
dGhvZCB3aXRoIG5vbi1iaW5hcnkgc3RyaW5ncz8KSWYgbm90LCBpdCBtaWdodCBiZSBiZXR0ZXIg
dG8gaGF2ZSB0aGUgbWV0aG9kIHJhaXNlIG9uIG5vbi1iaW5hcnkgcmVjZWl2ZXJzLgoKLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpGZWF0dXJlICMxNDk3NTogU3RyaW5n
I2FwcGVuZCB3aXRob3V0IGNoYW5naW5nIHJlY2VpdmVyJ3MgZW5jb2RpbmcKaHR0cHM6Ly9idWdz
LnJ1YnktbGFuZy5vcmcvaXNzdWVzLzE0OTc1I2NoYW5nZS03MzczOQoKKiBBdXRob3I6IGlvcXVh
dGl4IChTYW11ZWwgV2lsbGlhbXMpCiogU3RhdHVzOiBPcGVuCiogUHJpb3JpdHk6IE5vcm1hbAoq
IEFzc2lnbmVlOiAKKiBUYXJnZXQgdmVyc2lvbjogCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0KSSdtIG5vdCBzdXJlIHdoZXJlIHRoaXMgZml0cyBpbiwgYnV0IGluIG9y
ZGVyIHRvIGF2b2lkIGdhcmJhZ2UgYW5kIHN1cGVyZmx1b3VzIGZ1bmN0aW9uIGNhbGxzLCBpcyBp
dCBwb3NzaWJsZSB0aGF0IGBTdHJpbmcjPDxgLCBgU3RyaW5nI2NvbmNhdGAgb3IgdGhlIChwcm9w
b3NlZCkgYFN0cmluZyNhcHBlbmRgIGNhbiBhdm9pZCBjaGFuZ2luZyB0aGUgZW5jb2Rpbmcgb2Yg
dGhlIHJlY2VpdmVyPwoKUmlnaHQgbm93IGl0J3MgdmVyeSB0cmlja3kgdG8gZG8gdGhpcyBpbiBh
IHdheSB0aGF0IGRvZXNuJ3QgcmVxdWlyZSBleHRyYSBhbGxvY2F0aW9ucy4gSGVyZSBpcyB3aGF0
IEkgZG86CgpgYGBydWJ5CmNsYXNzIEJ1ZmZlciA8IFN0cmluZwoJQklOQVJZID0gRW5jb2Rpbmc6
OkJJTkFSWQoJCglkZWYgaW5pdGlhbGl6ZQoJCXN1cGVyCgkJCgkJZm9yY2VfZW5jb2RpbmcoQklO
QVJZKQoJZW5kCgkKCWRlZiA8PCBzdHJpbmcKCQlpZiBzdHJpbmcuZW5jb2RpbmcgPT0gQklOQVJZ
CgkJCXN1cGVyKHN0cmluZykKCQllbHNlCgkJCXN1cGVyKHN0cmluZy5iKSAjIFJlcXVpcmVzIGV4
dHJhIGFsbG9jYXRpb24uCgkJZW5kCgkJCgkJcmV0dXJuIHNlbGYKCWVuZAoJCglhbGlhcyBjb25j
YXQgPDwKZW5kCmBgYAoKV2hlbiB0aGUgcmVjZWl2ZXIgaXMgYmluYXJ5LCBidXQgY29udGFpbnMg
Ynl0ZSBzZXF1ZW5jZXMsIGFwcGVuZGluZyBVVEZfOCBjYW4gZmFpbDoKCmBgYAoiRm9vYmFyIi5i
IDw8ICJGw7jDuGJhciIKPT4gIkZvb2JhckbDuMO4YmFyIgoKPiAiRsO4w7hiYXIiLmIgPDwgIkbD
uMO4YmFyIgpFbmNvZGluZzo6Q29tcGF0aWJpbGl0eUVycm9yOiBpbmNvbXBhdGlibGUgY2hhcmFj
dGVyIGVuY29kaW5nczogQVNDSUktOEJJVCBhbmQgVVRGLTgKYGBgCgpTbywgaXQncyBub3QgcG9z
c2libGUgdG8gYXBwZW5kIGRhdGEsIGdlbmVyYWxseSwgYW5kIHRoZW4gY2FsbCBgZm9yY2VfZW5j
b2RpbmcoRW5jb2Rpbmc6OkJJTkFSWSlgLiBPbmUgbXVzdCBlbnN1cmUgdGhlIHN0cmluZyBpcyBi
aW5hcnkgYmVmb3JlIGFwcGVuZGluZyBpdC4KCkl0IHdvdWxkIGJlIG5pY2UgaWYgdGhlcmUgd2Fz
IGEgc29sdXRpb24gd2hpY2ggZGlkbid0IHJlcXVpcmUgYWRkaXRpb25hbCBhbGxvY2F0aW9ucy9j
b3BpZXMvbGluZWFyIHNjYW5zIGZvciB3aGF0IHNob3VsZCBiYXNpY2FsbHkgYmUgYSBgbWVtY3B5
YC4KClNlZSBhbHNvOiBodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1ZXMvMTQwMzMgYW5k
IGh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnL2lzc3Vlcy8xMzYyNiNub3RlLTMKClRoZXJlIGFy
ZSB0d28gb3B0aW9ucyB0byBmaXggdGhpczoKCjEvIERvbid0IGNoYW5nZSByZWNlaXZlciBlbmNv
ZGluZyBpbiBhbnkgY2FzZS4KMi8gQXBwbHkgMSwgYnV0IG9ubHkgd2hlbiByZWNlaXZlciBpcyB1
c2luZyBgRW5jb2Rpbmc6OkJJTkFSWWAKCgoKCi0tIApodHRwczovL2J1Z3MucnVieS1sYW5nLm9y
Zy8KClVuc3Vic2NyaWJlOiA8bWFpbHRvOnJ1YnktY29yZS1yZXF1ZXN0QHJ1YnktbGFuZy5vcmc/
c3ViamVjdD11bnN1YnNjcmliZT4KPGh0dHA6Ly9saXN0cy5ydWJ5LWxhbmcub3JnL2NnaS1iaW4v
bWFpbG1hbi9vcHRpb25zL3J1YnktY29yZT4K

In This Thread

Prev Next