[ruby-core:85323] [Ruby trunk Feature#14423] Enumerator from single object

From: zverok.offline@...
Date: 2018-02-01 08:43:32 UTC
List: ruby-core #85323
SXNzdWUgIzE0NDIzIGhhcyBiZWVuIHVwZGF0ZWQgYnkgenZlcm9rIChWaWN0b3IgU2hlcGVsZXYp
LgoKCmBgYHJ1YnkKMS4wLml0ZXJhdGUgeyB8eHwgKHggKyAyIC8geCkgLyAyIH0uc2xpY2Vfd2hl
bigmOj09KS5maXJzdC5sYXN0CiM9PiAxLjQxNDIxMzU2MjM3MzA5NQpgYGAKCiggzaHCsCDNnMqW
IM2hwrApCk5pY2UuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkZl
YXR1cmUgIzE0NDIzOiBFbnVtZXJhdG9yIGZyb20gc2luZ2xlIG9iamVjdApodHRwczovL2J1Z3Mu
cnVieS1sYW5nLm9yZy9pc3N1ZXMvMTQ0MjMjY2hhbmdlLTcwMTA5CgoqIEF1dGhvcjogenZlcm9r
IChWaWN0b3IgU2hlcGVsZXYpCiogU3RhdHVzOiBPcGVuCiogUHJpb3JpdHk6IE5vcm1hbAoqIEFz
c2lnbmVlOiAKKiBUYXJnZXQgdmVyc2lvbjogCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0KU29tZXRpbWVzIChvciByYXRoZXIgb2Z0ZW4pLCB0aGVyZSBpcyBhIHByb2dy
YW1taW5nIHBhdHRlcm4gb2YgInN0YXJ0IGZyb20gb25lIG9iamVjdCwgZG8gc29tZXRoaW5nLCBs
b29rIGF0IHRoZSByZXN1bHQsIGRvIHRoZSBzYW1lLCBsb29rIGF0IHRoZSByZXN1bHQgKGFuZCBz
byBvbikiLiAKCkV4YW1wbGVzOgoKKiBmZXRjaCBwYWdlIGJ5IFVSTCwgaWYgcGFnaW5hdGlvbiBw
cmVzZW50LCBmZXRjaCBuZXh0IHBhZ2U7CiogdGFrZSAxMCBqb2JzIGZyb20gdGhlIHF1ZXVlLCBw
cm9jZXNzIHRoZW0sIGV4aXQgd2hlbiBxdWV1ZSBpcyBlbXB0eTsKClR5cGljYWxseSwgdGhvc2Ug
YXJlIHJlcHJlc2VudGVkIGJ5IGB3aGlsZWAgb3IgYGxvb3BgICsgYGJyZWFrYCB3aGljaCBzb21l
aG93IGZlZWxzICJub3QgZnVuY3Rpb25hbCBlbm91Z2giLCBhbmQgZXZlbiAibm90IFJ1YnkgZW5v
dWdoIiwgc28gbXVjaCBsZXNzIGV4cHJlc3NpdmUgdGhhbiBgbWFwYCBhbmQgb3RoZXIgYEVudW1l
cmFibGVgL2BFbnVtZXJhdG9yYC1iYXNlZCBjeWNsZXMuCgpJbiBzb21lIGZ1bmN0aW9uYWwgbGFu
Z3VhZ2VzIG9yIGxpYnJhcmllcywgdGhlcmUgaXMgZnVuY3Rpb24gbmFtZWQgYEZpeGVkUG9pbnRg
IG9yIGBjb252ZXJnZWAsIHdob3NlIG1lYW5pbmcgaXMgInRha2UgYW4gaW5pdGlhbCB2YWx1ZSwg
cmVwZWF0IHRoZSBibG9jayBwcm92aWRlZCBvbiB0aGUgcmVzdWx0IG9uIHByZXYgY29tcHV0YXRp
b24sIHRpbGwgaXQgd2lsbCBub3QgJ3N0YWJsZSciLiBJIGJlbGlldmUgdGhpcyBub3Rpb24gY2Fu
IGJlIHVzZWZ1bCBmb3IgUnVieWlzdHMgdG9vLgoKUmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIChu
YW1lIGlzIGRpc3B1dGFibGUhKToKCmBgYHJ1YnkKY2xhc3MgT2JqZWN0CiAgZGVmIGNvbnZlcmdl
KCZibG9jaykKICAgIEVudW1lcmF0b3IubmV3IHsgfHl8CiAgICAgIHByZXYgPSBzZWxmCiAgICAg
IHkgPDwgc2VsZgogICAgICBsb29wIGRvCiAgICAgICAgY3VyID0gYmxvY2suY2FsbChwcmV2KQog
ICAgICAgIHJhaXNlIFN0b3BJdGVyYXRpb24gaWYgY3VyID09IHByZXYKICAgICAgICB5IDw8IGN1
cgogICAgICAgIHByZXYgPSBjdXIKICAgICAgZW5kCiAgICB9CiAgZW5kCmVuZApgYGAKCkV4YW1w
bGVzIG9mIHVzYWdlOgoKYGBgcnVieQojIEZ1bmN0aW9uYWwga2F0YTogZmluZCB0aGUgY2xvc2Vz
dCBudW1iZXIgdG8gc3FydCgyKToKMS4wLmNvbnZlcmdlIHsgfHh8ICh4ICsgMiAvIHgpIC8gMiB9
LnRvX2EubGFzdCAjID0+IDEuNDE0MjEzNTYyMzczMDk1Ck1hdGguc3FydCgyKSAjID0+IDEuNDE0
MjEzNTYyMzczMDk1MQoKIyBOZXh0IHBhZ2Ugc2l0dWF0aW9uOgpnZXQodXJsKS5jb252ZXJnZSB7
IHxwYWdlfCBwYWdlLm5leHQgfSAKIyA9PiByZXR1cm5zIFtwYWdlLCBwYWdlLm5leHQsIHBhZ2Uu
bmV4dC5uZXh0LCAuLi50aWwgdGhlIHJlc3VsdCBpcyBuaWwsIG9yIHNhbWUgcGFnZSByZXBlYXRl
ZF0KCiMgSm9iIHF1ZXVlIHNpdHVhdGlvbjoKcXVldWUudG9wKDEwKS5jb252ZXJnZSB7IHxqb2Jz
fCAKICBqb2JzLmVhY2goJjpwZXJmb3JtKQogIHF1ZXVlLnRvcCgxMCkgCn0KIyA9PiB0YWtlcyB0
b3AgMTAgam9icywgdGlsbCBxdWV1ZSBpcyBlbXB0eSAoYFtdYCBpcyByZXR1cm5lZCB0d28gc3Vj
Y2Vzc2Z1bCB0aW1lcykKCiMgVXNlZnVsIGZvciBub24tY29udmVyZ2luZyBzaXR1YXRpb25zLCB0
b286CjIuY29udmVyZ2UgeyB8eHwgeCAqKiAyIH0udGFrZSg0KQojID0+IFsyLCA0LCAxNiwgMjU2
XQoKIyBJZGlvbWF0aWMgRmlib25hY2NpOgpbMCwgMV0uY29udmVyZ2UgeyB8ZjAsIGYxfCBbZjEs
IGYwICsgZjFdIH0udGFrZSgxMCkubWFwKCY6Zmlyc3QpCiMgPT4gWzAsIDEsIDEsIDIsIDMsIDUs
IDgsIDEzLCAyMSwgMzRdCmBgYAoKUmVmZXJlbmNlIHRvIHNpbWlsYXIgdGhpbmdzOgoKKiBDbG9q
dXJlIFtpdGVyYXRlXShodHRwczovL2Nsb2p1cmVkb2NzLm9yZy9jbG9qdXJlLmNvcmUvaXRlcmF0
ZSkgIlJldHVybnMgYSBsYXp5IHNlcXVlbmNlIG9mIGB4YCwgYChmIHgpYCwgYChmIChmIHgpKWAg
ZXRjLiIgTm8gY29udmVyZ2luZywganVzdCBpbmZpbml0ZSBzZXF1ZW5jZS4uLiBBbmQgbWF5YmUg
dGhhdCBpcyBldmVuIG1vcmUgYmFzaWMgYW5kIGlkaW9tYXRpYy4gVGhlIG5hbWUgaXMgbmljZSwg
dG9vLgoqIFdvbGZyYW1MYW5nIFtGaXhlZFBvaW50XShodHRwOi8vcmVmZXJlbmNlLndvbGZyYW0u
Y29tL2xhbmd1YWdlL3JlZi9GaXhlZFBvaW50Lmh0bWwpCiogUmFtZGEgW2NvbnZlcmdlXShodHRw
Oi8vcmFtZGFqcy5jb20vZG9jcy8jY29udmVyZ2UpCiogRWxpeGlyIFtTdHJlYW0jdW5mb2xkXSho
dHRwczovL2hleGRvY3MucG0vZWxpeGlyL1N0cmVhbS5odG1sI3VuZm9sZC8yKSAoZW5kcyBpdGVy
YXRpb24gd2hlbiBgbmlsYCBpcyByZXR1cm5lZCkKKiBTY2FsYSBbSXRlcmF0b3IjaXRlcmF0ZV0o
aHR0cHM6Ly93d3cuc2NhbGEtbGFuZy5vcmcvYXBpL2N1cnJlbnQvc2NhbGEvY29sbGVjdGlvbi9J
dGVyYXRvciQuaHRtbCNpdGVyYXRlJTVCVCU1RCUyOHN0YXJ0JTNBVCUyOSUyOGYlM0FUJTNEJTNF
VCUyOSUzQUl0ZXJhdG9yJTVCVCU1RCkgKGp1c3QgaW5maW5pdGUgc2VxdWVuY2UpCgpQb3NzaWJs
ZSBjYWxsLXNlcToKCiogSWYgY29udmVyZ2VzOiBgT2JqZWN0I2NvbnZlcmdlKCZibG9jaylgLCBg
RW51bWVyYXRvci5jb252ZXJnZShvYmplY3QsICZibG9jaylgOwoqIElmIGp1c3QgYW4gaW5maW5p
dGUgc2VxdWVuY2U6IGBPYmplY3QjaXRlcmF0ZSgmYmxvY2spYCwgYE9iamVjdCNkZWR1Y2UoJmJs
b2NrKWAgKGFzIG9wcG9zZWQgdG8gYHJlZHVjZWApLCBgRW51bWVyYXRvci5pdGVyYXRlKG9iamVj
dCwgJmJsb2NrKWAsIGBFbnVtZXJhdG9yI2VudW1lcmF0ZShvYmplY3QsICZibG9jaylgLgoKV0RZ
VD8uLgoKUFM6IENhbiBpbWFnaW5lIHNvbWVib2R5IGFscmVhZHkgcHJvcG9zZWQgdGhhdCwgeWV0
IGNhbid0IGZpbmQgbm90aGluZyBzaW1pbGFyIGluIHRoZSB0cmFja2VyIGZvciBhbGwga2V5d29y
ZHMgSSd2ZSB0cmllZC4KCgoKCi0tIApodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy8KClVuc3Vi
c2NyaWJlOiA8bWFpbHRvOnJ1YnktY29yZS1yZXF1ZXN0QHJ1YnktbGFuZy5vcmc/c3ViamVjdD11
bnN1YnNjcmliZT4KPGh0dHA6Ly9saXN0cy5ydWJ5LWxhbmcub3JnL2NnaS1iaW4vbWFpbG1hbi9v
cHRpb25zL3J1YnktY29yZT4K

In This Thread

Prev Next