[ruby-core:85569] [Ruby trunk Feature#14476] Adding same_all? for checking whether all items in an Array are same

From: danieldasilvaferreira@...
Date: 2018-02-15 00:45:05 UTC
List: ruby-core #85569
SXNzdWUgIzE0NDc2IGhhcyBiZWVuIHVwZGF0ZWQgYnkgZHNmZXJyZWlyYSAoRGFuaWVsIEZlcnJl
aXJhKS4KCgogbXJrbiAoS2VudGEgTXVyYXRhKSB3cm90ZToKCj4gV2UgZG9uJ3QgaGF2ZSBBcnJh
eSN1bmlxPy4KPiBEbyB5b3Ugc3VnZ2VzdCBhZGRpbmcgc3VjaCBhIG5ldyBtZXRob2Q/CgpUaGF0
IGlzIHdoYXQgSSBtZWFudCB3aXRoOgoKIkluc3RlYWQgb2YgYEFycmF5I3NhbWVfYWxsP2Agd2h5
IG5vdCBgQXJyYXkjdW5pcT9gIgoKYEFycmF5I3VuaXE/YCBtYWtlcyBzZW5zZSB0byBtZSBhbmQg
bWFwcyB3ZWxsIHdpdGggdGhlIGxvZ2ljIG9mIGBhcnkudW5pcS5zaXplIDwgMmAgdGhhdCBJIG1l
bnRpb25lZCBlYXJsaWVyLgoKSWYgd2UgcmV0dXJuIGVhcmxpZXIgZnJvbSB0aGUgbWV0aG9kIGF0
IHRoZSBmaXJzdCBgZmFsc2VgIHdlIHdpbGwgaGF2ZSB3aGF0IHlvdSBhcmUgbG9va2luZyBmb3Ig
aXNuJ3QgdGhhdCByaWdodCwgb3IgYW0gSSBtaXNzaW5nIHNvbWV0aGluZz8KCkkgYWxzbyB0aGlu
ayBpdCBpcyBhIG1ldGhvZCB0aGF0IHdpbGwgc2ltcGxpZnkgc29tZSBjb2RlIGFuZCBwZW9wbGUg
d2lsbCB1c2UgaXQuCkkgd2lsbCB1c2UgaXQgZm9yIHN1cmUuCkRldmVsb3BpbmcgaXQgaW4gQyBp
cyBldmVuIGJldHRlciBiZWNhdXNlIGl0IHdpbGwgZ3VhcmFudGVlIHRoZSBiZXN0IHBlcmZvcm1h
bmNlIHJlc3VsdHMuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkZl
YXR1cmUgIzE0NDc2OiBBZGRpbmcgc2FtZV9hbGw/IGZvciBjaGVja2luZyB3aGV0aGVyIGFsbCBp
dGVtcyBpbiBhbiBBcnJheSBhcmUgc2FtZQpodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1
ZXMvMTQ0NzYjY2hhbmdlLTcwMzYxCgoqIEF1dGhvcjogbXJrbiAoS2VudGEgTXVyYXRhKQoqIFN0
YXR1czogQXNzaWduZWQKKiBQcmlvcml0eTogTm9ybWFsCiogQXNzaWduZWU6IG1hdHogKFl1a2lo
aXJvIE1hdHN1bW90bykKKiBUYXJnZXQgdmVyc2lvbjogMi42Ci0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0KSW4gdGhpcyBpc3N1ZSwgSSBwcm9wb3NlIHRvIGludHJvZHVj
ZSBgc2FtZV9hbGw/YCBpbnN0YW5jZSBtZXRob2Qgb2YgYEFycmF5YCBjbGFzcy4KVGhpcyBuZXcg
bWV0aG9kIGNoZWNrcyB3aGV0aGVyIHRoZSBhbGwgaXRlbXMgaW4gdGhlIHJlY2VpdmVyIGFyZSBz
YW1lLgoKVG9kYXksIEkgbmVlZGVkIHRvIHdyaXRlIHRoZSBjb2RlIHRvIGp1ZGdlIHdoZXRoZXIg
YWxsIGl0ZW1zIGluIGFuIEFycmF5IGFyZSBzYW1lLgpJIHdhbnRlZCB0byBtYWtlIHRoZSBmb2xs
b3dpbmcgZXhwcmVzc2lvbiwgdGhhdCBJJ3ZlIHdyaXR0ZW4gYXQgZmlyc3QsIG1vcmUgZWZmaWNp
ZW50bHkuCgpgYGBydWJ5CmFyeS5hbGw/IHt8ZXwgZS5mb28gPT0gYXJ5WzBdLmZvbyB9CmBgYAoK
SSB0aG91Z2h0IHRoZSBmb2xsb3dpbmcgYW5vdGhlciBzaW1wbGVyIGNhc2UsIHRvby4KCmBgYHJ1
YnkKYXJ5LmFsbD8ge3xlfCBlID09IGFyeVswXSB9CmBgYAoKQXMgSSBkaXNjdXNzZWQgd2l0aCBz
b21lIENSdWJ5IGNvbW1pdHRlcnMgYW5kIG15IGNvbGxlYWd1ZXMgYXQgU3BlZWUsIEluYy4sIEkg
Zm91bmQgdGhhdCBib3RoIGNhc2VzIGhhdmUgdGhlIGZvbGxvd2luZyBlZmZpY2llbnQgZXhwcmVz
c2lvbnM6CgpgYGBydWJ5CiMgZm9yIHRoZSAxc3QgY2FzZQphcnkuZW1wdHk/IHx8IGFyeVswXS5m
b28ueWllbGRfc2VsZiB7fGUwfCBhcnlbMS4uLTFdLmFsbD8ge3xlfCBlLmZvbyA9PSBlMCB9IH3i
gKgKCiMgZm9yIHRoZSAybmQgY2FzZQphcnkuZW1wdHk/IHx8IGFyeVswLi4tMl0gPT0gYXJ5WzEu
Li0xXQpgYGAKCkJvdGggZXhwcmVzc2lvbnMgYXJlbid0IGVhc3kgdG8gdW5kZXJzdGFuZCB0aGUg
b3JpZ2luYWwgcHVycG9zZSB0aGF0IGlzIGNoZWNraW5nIHdoZXRoZXIgYWxsIHRoZSBpdGVtcyBh
cmUgc2FtZS4KCkkgd2FudCB0byBnaXZlIHRoaXMgZmVhdHVyZSBhIGNsZWFyIG5hbWUgdG8gbWFr
ZSB0aGUgY29kZSByZWFkYWJsZS4KQW5kIEkgdGhpbmsgaXQgc2hvdWxkIGJlIHByb3ZpZGVkIGFz
IGEgY29yZSBmZWF0dXJlIGJlY2F1c2UgaXQgY2FuIGJlIG1vcmUgZWZmaWNpZW50IGJ5IGltcGxl
bWVudGluZyBpbiBDIGxhbmd1YWdlLgoKVGhlIGJlbmNobWFyayBzY3JpcHQgaXM6IGh0dHBzOi8v
Z2lzdC5naXRodWIuY29tL21ya24vMjZhMGZjZmM0MzFhNDVmZTgwOWZiYmVmOTVhY2VhZjUKSSB1
c2VkIGl0IHRvIGZpbmQgdGhlIGVmZmljaWVudCBleHByZXNzaW9ucy4KVGhlIGV4YW1wbGUgcmVz
dWx0IG9mIHRoaXMgYmVuY2htYXJrIG9uIG15IE1hY0Jvb2sgUHJvIGlzIGhlcmUuCgpgYGAKJCBy
dWJ5IC12IGJlbmNoLnJiCnJ1YnkgMi42LjBkZXYgKDIwMTgtMDItMTQgdHJ1bmsgNjI0MDIpIFt4
ODZfNjQtZGFyd2luMTZdCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K
QmVuY2htYXJrIGNhc2U6IHNodWZmbGUKICAgICAgICAgICAgICAgICB1c2VyICAgICBzeXN0ZW0g
ICAgICB0b3RhbCAgICAgICAgcmVhbAphbGw/LW1ldGhvZC0xICAwLjAwMTUyNSAgIDAuMDAwMDg4
ICAgMC4wMDE2MTMgKCAgMC4wMDE2MzIpCmFsbD8tbWV0aG9kLTIgIDAuMDAwNDg5ICAgMC4wMDAw
MzEgICAwLjAwMDUyMCAoICAwLjAwMDU2NSkKYWxsPy1tZXRob2QtMyAgMC4wMDA0NDQgICAwLjAw
MDAzOSAgIDAuMDAwNDgzICggIDAuMDAwNDgyKQphbGw/LWl0ZW0gICAgMC4wMDAzMjUgICAwLjAw
MDA3OCAgIDAuMDAwNDAzICggIDAuMDAwNDAyKQpvcHQtbWV0aG9kICAgMC42NTU5NTkgICAwLjAz
MzgxNCAgIDAuNjg5NzczICggIDAuNzA4NTE1KQpvcHQtaXRlbSAgICAgMC4wMDAzMTYgICAwLjAw
MDAwMSAgIDAuMDAwMzE3ICggIDAuMDAwMzE3KQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLQpCZW5jaG1hcmsgY2FzZTogdGFpbDAKICAgICAgICAgICAgICAgICB1c2Vy
ICAgICBzeXN0ZW0gICAgICB0b3RhbCAgICAgICAgcmVhbAphbGw/LW1ldGhvZC0xICA5LjQxMjgx
MCAgIDAuMjMxMTI2ICAgOS42NDM5MzYgKCAgOS42ODExMTgpCmFsbD8tbWV0aG9kLTIgIDUuMzc1
MDc1ICAgMC4xMzc5MDggICA1LjUxMjk4MyAoICA1Ljc1NDU1MCkKYWxsPy1tZXRob2QtMyAgNS4y
MjYxMzIgICAwLjE2NzY0MCAgIDUuMzkzNzcyICggIDUuNTA3MDMxKQphbGw/LWl0ZW0gICAgMC44
NzM3MDAgICAwLjAwNzU0NSAgIDAuODgxMjQ1ICggIDAuOTE3MjEwKQpvcHQtbWV0aG9kICAgNS4z
MTk2NDggICAwLjE3MjU0NyAgIDUuNDkyMTk1ICggIDUuNjMzMTQwKQpvcHQtaXRlbSAgICAgMC4x
NzQzNDkgICAwLjAwMTk3NCAgIDAuMTc2MzIzICggIDAuMTgzMDAyKQoKLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpCZW5jaG1hcmsgY2FzZTogaGVhZDAKICAgICAgICAg
ICAgICAgICB1c2VyICAgICBzeXN0ZW0gICAgICB0b3RhbCAgICAgICAgcmVhbAphbGw/LW1ldGhv
ZC0xICAwLjAwMjQyMSAgIDAuMDAwMDY4ICAgMC4wMDI0ODkgKCAgMC4wMDI0ODkpCmFsbD8tbWV0
aG9kLTIgIDAuMDAyMTY5ICAgMC4wMDAyMTMgICAwLjAwMjM4MiAoICAwLjAwMjM4MikKYWxsPy1t
ZXRob2QtMyAgMC4wMDE2MjQgICAwLjAwMDAyNiAgIDAuMDAxNjUwICggIDAuMDAxNjUxKQphbGw/
LWl0ZW0gICAgMC4wMDA2MjMgICAwLjAwMDAwMSAgIDAuMDAwNjI0ICggIDAuMDAwNjI0KQpvcHQt
bWV0aG9kICAgNC43NzkxMjAgICAwLjE0NjMxMiAgIDQuOTI1NDMyICggIDQuOTUxMTY3KQpvcHQt
aXRlbSAgICAgMC4wMDA2MjkgICAwLjAwMDAwMSAgIDAuMDAwNjMwICggIDAuMDAwNjI5KQoKLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpCZW5jaG1hcmsgY2FzZTogYWxs
MQogICAgICAgICAgICAgICAgIHVzZXIgICAgIHN5c3RlbSAgICAgIHRvdGFsICAgICAgICByZWFs
CmFsbD8tbWV0aG9kLTEgIDkuMzc5NjUwICAgMC4yNTU4NjUgICA5LjYzNTUxNSAoICA5LjY4MzA3
OCkKYWxsPy1tZXRob2QtMiAgNC45NTAyODAgICAwLjE1MDY1OSAgIDUuMTAwOTM5ICggIDUuMTQw
MTc0KQphbGw/LW1ldGhvZC0zICA0Ljg1Nzg5OCAgIDAuMTI5MTI1ICAgNC45ODcwMjMgKCAgNS4w
MDMxNDIpCmFsbD8taXRlbSAgICAwLjY5NDExMyAgIDAuMDAxMjk1ICAgMC42OTU0MDggKCAgMC43
MDIzNzApCm9wdC1tZXRob2QgICA1LjAzMjM3MyAgIDAuMTIxNzA4ICAgNS4xNTQwODEgKCAgNS4x
ODk1OTkpCm9wdC1pdGVtICAgICAwLjE3MDU0MCAgIDAuMDAyMDY5ICAgMC4xNzI2MDkgKCAgMC4x
ODAzNDMpCgpgYGAKCgoKLS0gCmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnLwoKVW5zdWJzY3Jp
YmU6IDxtYWlsdG86cnVieS1jb3JlLXJlcXVlc3RAcnVieS1sYW5nLm9yZz9zdWJqZWN0PXVuc3Vi
c2NyaWJlPgo8aHR0cDovL2xpc3RzLnJ1YnktbGFuZy5vcmcvY2dpLWJpbi9tYWlsbWFuL29wdGlv
bnMvcnVieS1jb3JlPgo=

In This Thread

Prev Next