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

From: mail@...
Date: 2018-02-01 08:23:48 UTC
List: ruby-core #85321
SXNzdWUgIzE0NDIzIGhhcyBiZWVuIHVwZGF0ZWQgYnkgc29zNG50IChTdGVmYW4gU2Now7zDn2xl
cikuCgoKTWF5YmUgaXQgY291bGQgYmUgYXMgc2ltcGxlIGFzOgoKYGBgcnVieQpjbGFzcyBPYmpl
Y3QKICBkZWYgaXRlcmF0ZQogICAgRW51bWVyYXRvci5uZXcgeyB8eXwKICAgICAgb2JqID0gc2Vs
ZgogICAgICBsb29wIGRvCiAgICAgICAgeSA8PCBvYmoKICAgICAgICBvYmogPSB5aWVsZCBvYmoK
ICAgICAgZW5kCiAgICB9CiAgZW5kCmVuZAoKMS4wLml0ZXJhdGUgeyB8eHwgKHggKyAyIC8geCkg
LyAyIH0uc2xpY2Vfd2hlbigmOj09KS5maXJzdC5sYXN0CiM9PiAxLjQxNDIxMzU2MjM3MzA5NQpg
YGAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KRmVhdHVyZSAjMTQ0
MjM6IEVudW1lcmF0b3IgZnJvbSBzaW5nbGUgb2JqZWN0Cmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcu
b3JnL2lzc3Vlcy8xNDQyMyNjaGFuZ2UtNzAxMDcKCiogQXV0aG9yOiB6dmVyb2sgKFZpY3RvciBT
aGVwZWxldikKKiBTdGF0dXM6IE9wZW4KKiBQcmlvcml0eTogTm9ybWFsCiogQXNzaWduZWU6IAoq
IFRhcmdldCB2ZXJzaW9uOiAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LQpTb21ldGltZXMgKG9yIHJhdGhlciBvZnRlbiksIHRoZXJlIGlzIGEgcHJvZ3JhbW1pbmcgcGF0
dGVybiBvZiAic3RhcnQgZnJvbSBvbmUgb2JqZWN0LCBkbyBzb21ldGhpbmcsIGxvb2sgYXQgdGhl
IHJlc3VsdCwgZG8gdGhlIHNhbWUsIGxvb2sgYXQgdGhlIHJlc3VsdCAoYW5kIHNvIG9uKSIuIAoK
RXhhbXBsZXM6CgoqIGZldGNoIHBhZ2UgYnkgVVJMLCBpZiBwYWdpbmF0aW9uIHByZXNlbnQsIGZl
dGNoIG5leHQgcGFnZTsKKiB0YWtlIDEwIGpvYnMgZnJvbSB0aGUgcXVldWUsIHByb2Nlc3MgdGhl
bSwgZXhpdCB3aGVuIHF1ZXVlIGlzIGVtcHR5OwoKVHlwaWNhbGx5LCB0aG9zZSBhcmUgcmVwcmVz
ZW50ZWQgYnkgYHdoaWxlYCBvciBgbG9vcGAgKyBgYnJlYWtgIHdoaWNoIHNvbWVob3cgZmVlbHMg
Im5vdCBmdW5jdGlvbmFsIGVub3VnaCIsIGFuZCBldmVuICJub3QgUnVieSBlbm91Z2giLCBzbyBt
dWNoIGxlc3MgZXhwcmVzc2l2ZSB0aGFuIGBtYXBgIGFuZCBvdGhlciBgRW51bWVyYWJsZWAvYEVu
dW1lcmF0b3JgLWJhc2VkIGN5Y2xlcy4KCkluIHNvbWUgZnVuY3Rpb25hbCBsYW5ndWFnZXMgb3Ig
bGlicmFyaWVzLCB0aGVyZSBpcyBmdW5jdGlvbiBuYW1lZCBgRml4ZWRQb2ludGAgb3IgYGNvbnZl
cmdlYCwgd2hvc2UgbWVhbmluZyBpcyAidGFrZSBhbiBpbml0aWFsIHZhbHVlLCByZXBlYXQgdGhl
IGJsb2NrIHByb3ZpZGVkIG9uIHRoZSByZXN1bHQgb24gcHJldiBjb21wdXRhdGlvbiwgdGlsbCBp
dCB3aWxsIG5vdCAnc3RhYmxlJyIuIEkgYmVsaWV2ZSB0aGlzIG5vdGlvbiBjYW4gYmUgdXNlZnVs
IGZvciBSdWJ5aXN0cyB0b28uCgpSZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gKG5hbWUgaXMgZGlz
cHV0YWJsZSEpOgoKYGBgcnVieQpjbGFzcyBPYmplY3QKICBkZWYgY29udmVyZ2UoJmJsb2NrKQog
ICAgRW51bWVyYXRvci5uZXcgeyB8eXwKICAgICAgcHJldiA9IHNlbGYKICAgICAgeSA8PCBzZWxm
CiAgICAgIGxvb3AgZG8KICAgICAgICBjdXIgPSBibG9jay5jYWxsKHByZXYpCiAgICAgICAgcmFp
c2UgU3RvcEl0ZXJhdGlvbiBpZiBjdXIgPT0gcHJldgogICAgICAgIHkgPDwgY3VyCiAgICAgICAg
cHJldiA9IGN1cgogICAgICBlbmQKICAgIH0KICBlbmQKZW5kCmBgYAoKRXhhbXBsZXMgb2YgdXNh
Z2U6CgpgYGBydWJ5CiMgRnVuY3Rpb25hbCBrYXRhOiBmaW5kIHRoZSBjbG9zZXN0IG51bWJlciB0
byBzcXJ0KDIpOgoxLjAuY29udmVyZ2UgeyB8eHwgKHggKyAyIC8geCkgLyAyIH0udG9fYS5sYXN0
ICMgPT4gMS40MTQyMTM1NjIzNzMwOTUKTWF0aC5zcXJ0KDIpICMgPT4gMS40MTQyMTM1NjIzNzMw
OTUxCgojIE5leHQgcGFnZSBzaXR1YXRpb246CmdldCh1cmwpLmNvbnZlcmdlIHsgfHBhZ2V8IHBh
Z2UubmV4dCB9IAojID0+IHJldHVybnMgW3BhZ2UsIHBhZ2UubmV4dCwgcGFnZS5uZXh0Lm5leHQs
IC4uLnRpbCB0aGUgcmVzdWx0IGlzIG5pbCwgb3Igc2FtZSBwYWdlIHJlcGVhdGVkXQoKIyBKb2Ig
cXVldWUgc2l0dWF0aW9uOgpxdWV1ZS50b3AoMTApLmNvbnZlcmdlIHsgfGpvYnN8IAogIGpvYnMu
ZWFjaCgmOnBlcmZvcm0pCiAgcXVldWUudG9wKDEwKSAKfQojID0+IHRha2VzIHRvcCAxMCBqb2Jz
LCB0aWxsIHF1ZXVlIGlzIGVtcHR5IChgW11gIGlzIHJldHVybmVkIHR3byBzdWNjZXNzZnVsIHRp
bWVzKQoKIyBVc2VmdWwgZm9yIG5vbi1jb252ZXJnaW5nIHNpdHVhdGlvbnMsIHRvbzoKMi5jb252
ZXJnZSB7IHx4fCB4ICoqIDIgfS50YWtlKDQpCiMgPT4gWzIsIDQsIDE2LCAyNTZdCgojIElkaW9t
YXRpYyBGaWJvbmFjY2k6ClswLCAxXS5jb252ZXJnZSB7IHxmMCwgZjF8IFtmMSwgZjAgKyBmMV0g
fS50YWtlKDEwKS5tYXAoJjpmaXJzdCkKIyA9PiBbMCwgMSwgMSwgMiwgMywgNSwgOCwgMTMsIDIx
LCAzNF0KYGBgCgpSZWZlcmVuY2UgdG8gc2ltaWxhciB0aGluZ3M6CgoqIENsb2p1cmUgW2l0ZXJh
dGVdKGh0dHBzOi8vY2xvanVyZWRvY3Mub3JnL2Nsb2p1cmUuY29yZS9pdGVyYXRlKSAiUmV0dXJu
cyBhIGxhenkgc2VxdWVuY2Ugb2YgYHhgLCBgKGYgeClgLCBgKGYgKGYgeCkpYCBldGMuIiBObyBj
b252ZXJnaW5nLCBqdXN0IGluZmluaXRlIHNlcXVlbmNlLi4uIEFuZCBtYXliZSB0aGF0IGlzIGV2
ZW4gbW9yZSBiYXNpYyBhbmQgaWRpb21hdGljLiBUaGUgbmFtZSBpcyBuaWNlLCB0b28uCiogV29s
ZnJhbUxhbmcgW0ZpeGVkUG9pbnRdKGh0dHA6Ly9yZWZlcmVuY2Uud29sZnJhbS5jb20vbGFuZ3Vh
Z2UvcmVmL0ZpeGVkUG9pbnQuaHRtbCkKKiBSYW1kYSBbY29udmVyZ2VdKGh0dHA6Ly9yYW1kYWpz
LmNvbS9kb2NzLyNjb252ZXJnZSkKKiBFbGl4aXIgW1N0cmVhbSN1bmZvbGRdKGh0dHBzOi8vaGV4
ZG9jcy5wbS9lbGl4aXIvU3RyZWFtLmh0bWwjdW5mb2xkLzIpIChlbmRzIGl0ZXJhdGlvbiB3aGVu
IGBuaWxgIGlzIHJldHVybmVkKQoqIFNjYWxhIFtJdGVyYXRvciNpdGVyYXRlXShodHRwczovL3d3
dy5zY2FsYS1sYW5nLm9yZy9hcGkvY3VycmVudC9zY2FsYS9jb2xsZWN0aW9uL0l0ZXJhdG9yJC5o
dG1sI2l0ZXJhdGUlNUJUJTVEJTI4c3RhcnQlM0FUJTI5JTI4ZiUzQVQlM0QlM0VUJTI5JTNBSXRl
cmF0b3IlNUJUJTVEKSAoanVzdCBpbmZpbml0ZSBzZXF1ZW5jZSkKClBvc3NpYmxlIGNhbGwtc2Vx
OgoKKiBJZiBjb252ZXJnZXM6IGBPYmplY3QjY29udmVyZ2UoJmJsb2NrKWAsIGBFbnVtZXJhdG9y
LmNvbnZlcmdlKG9iamVjdCwgJmJsb2NrKWA7CiogSWYganVzdCBhbiBpbmZpbml0ZSBzZXF1ZW5j
ZTogYE9iamVjdCNpdGVyYXRlKCZibG9jaylgLCBgT2JqZWN0I2RlZHVjZSgmYmxvY2spYCAoYXMg
b3Bwb3NlZCB0byBgcmVkdWNlYCksIGBFbnVtZXJhdG9yLml0ZXJhdGUob2JqZWN0LCAmYmxvY2sp
YCwgYEVudW1lcmF0b3IjZW51bWVyYXRlKG9iamVjdCwgJmJsb2NrKWAuCgpXRFlUPy4uCgpQUzog
Q2FuIGltYWdpbmUgc29tZWJvZHkgYWxyZWFkeSBwcm9wb3NlZCB0aGF0LCB5ZXQgY2FuJ3QgZmlu
ZCBub3RoaW5nIHNpbWlsYXIgaW4gdGhlIHRyYWNrZXIgZm9yIGFsbCBrZXl3b3JkcyBJJ3ZlIHRy
aWVkLgoKCgoKLS0gCmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnLwoKVW5zdWJzY3JpYmU6IDxt
YWlsdG86cnVieS1jb3JlLXJlcXVlc3RAcnVieS1sYW5nLm9yZz9zdWJqZWN0PXVuc3Vic2NyaWJl
Pgo8aHR0cDovL2xpc3RzLnJ1YnktbGFuZy5vcmcvY2dpLWJpbi9tYWlsbWFuL29wdGlvbnMvcnVi
eS1jb3JlPgo=

In This Thread

Prev Next