[ruby-core:95955] [Ruby master Feature#14784] Comparable#clamp with a range
From:
zverok.offline@...
Date:
2019-11-26 11:01:54 UTC
List:
ruby-core #95955
SXNzdWUgIzE0Nzg0IGhhcyBiZWVuIHVwZGF0ZWQgYnkgenZlcm9rIChWaWN0b3IgU2hlcGVsZXYp Lg0KDQoNCj4gU291bmRzIHJlYXNvbmFibGUsIGFuZCBtYXR6IHNheXMg4oCcYW4gZXJyb3Igb24g ZW5kLWV4Y2x1c2l2ZSByYW5nZXPigJ0gYXQgaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvaXNz dWVzLzE0Nzg0I2NoYW5nZS04MTI1NCBhbmQgZGl0dG8gaW4gdGhlIGxvZyBvZiAyMDE5MDgyOSBk ZXYgbWVldGluZywgYnV0IG5vdGhpbmcgYWJvdXQgYmVnaW5sZXNzL2VuZGxlc3MgcmFuZ2VzLg0K DQpAbm9idSBXaWxsIGl0IGJlIGZpeGVkIGJlZm9yZSAyLjcgZmluYWw/IENhbiBJIGhlbHAgc29t ZWhvdz8NCg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KRmVhdHVy ZSAjMTQ3ODQ6IENvbXBhcmFibGUjY2xhbXAgd2l0aCBhIHJhbmdlDQpodHRwczovL2J1Z3MucnVi eS1sYW5nLm9yZy9pc3N1ZXMvMTQ3ODQjY2hhbmdlLTgyNzkwDQoNCiogQXV0aG9yOiB6dmVyb2sg KFZpY3RvciBTaGVwZWxldikNCiogU3RhdHVzOiBDbG9zZWQNCiogUHJpb3JpdHk6IE5vcm1hbA0K KiBBc3NpZ25lZTogDQoqIFRhcmdldCB2ZXJzaW9uOiANCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0NCioqUHJvcG9zYWwqKg0KDQpBbGxvdyAib25lLXNpZGVkIiBgY2xh bXBgIHRvIGxpbWl0IG9ubHkgdXBwZXIgYm91bmQgKGFuZCwgaWRlYWxseSwgb25seSBsb3dlciB0 b28pLg0KDQpQcm9wb3NlZCBpbXBsZW1lbnRhdGlvbjogYWxsb3cgYGNsYW1wKGJlZ2luLi5lbmQp YCBjYWxsIHNlcXVlbmNlICh3aXRob3V0IGRlcHJlY2F0aW5nIGBjbGFtcChiZWdpbiwgZW5kKWAp LCB0byB0YWtlIGFkdmFudGFnZSBmcm9tIG9wZW4tZW5kZWQgcmFuZ2VzIHdpdGggYGNsYW1wKGJl Z2luLi4pYC4NCg0KKipSZWFzb25pbmcgYWJvdXQgcmFuZ2UqKg0KDQpJIGxvb2tlZCB0aHJvdWdo IGAjY2xhbXBgIFtkaXNjdXNzaW9uXShodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1ZXMv MTA1OTQpLCBidXQgY291bGRuJ3QgZmluZCB0aGVyZSB3aHkgc3ludGF4IGBjbGFtcChiLCBlKWAg d2FzIHByZWZlcnJlZCB0byBgY2xhbXAoYi4uZSlgLiBUaGUgb25seSBvbmUgSSBjb3VsZCB0aGlu ayBvZiBpcyBwb3NzaWJsZSBjb25mdXNlIG9mIGhvdyBgY2xhbXAoYi4uZSlgIGFuZCBgY2xhbXAo Yi4uLmUpYCBiZWhhdmlvcnMgc2hvdWxkIGRpZmZlci4NCg0KVGhlIHByb2JsZW0gYmVjb21lcyBt b3JlIGltcG9ydGFudCB3aXRoIHRoZSBpbnRyb2R1Y3Rpb24gb2YgW29wZW4tZW5kZWQgcmFuZ2Vz XShodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1ZXMvMTI5MTIpLiBJIGJlbGlldmUgdGhp cyBpcyBwcmV0dHkgbmF0dXJhbDoNCg0KYGBgcnVieQ0Kc29tZV9jYWxjdWxhdGlvbi5jbGFtcCgw Li4pICAgICMgbm93LCBJIHVzZSBjbGFtcCgwLCBGbG9hdDo6SU5GSU5JVFkpDQp0aW1lc3RhbXAu Y2xhbXAoRGF0ZS50b2RheS4uKSAgIyBub3csIEkgdHlwaWNhbGx5IHVzZSBjbGFtcChEYXRlLnRv ZGF5Li5JTkZJTklURV9GVVRVUkVfREFURSkgd2l0aCBjdXN0b20gZGVmaW5lZCBjb25zdGFudA0K YGBgDQoNCkNvdW50ZXItYXJndW1lbnRzOg0KDQoxLiBUaGlzIGlzICJvbmUtc2lkZWQiLCB5b3Ug Y2FuJ3QgZG8gYGNsYW1wKC4uRGF0ZS50b2RheSlgLiBUbyB0aGlzIEkgY2FuIGFuc3dlciB0aGFu IGZyb20gbXkgZXhwZXJpZW5jZSAiY2xhbXBpbmcgb25seSBtaW5pbXVtIiBpcyBtb3JlIGZyZXF1 ZW50LCBhbmQgaWYgeW91IG5lZWQgdG8gY2xhbXAgb25seSBtYXhpbXVtLCBtb3N0IG9mIHRoZSB0 aW1lIHRoZXJlIGlzIHNvbWUgInJlYXNvbmFibGUgbWludW11bSIuIEFub3RoZXIgaWRlYSBpcyB0 aGF0IG1heWJlIHRoaXMgaXMgYSBwcm9vZiB3aHkgInN0YXJ0LWxlc3MiIHJhbmdlcyBhcmUgbmVj ZXNzYXJ5LCBhZnRlciBhbGwsIFtkb3VidGVkIGhlcmVdKGh0dHBzOi8vYnVncy5ydWJ5LWxhbmcu b3JnL2lzc3Vlcy8xMjkxMiNub3RlLTEyKQ0KMi4gV2h5IG5vdCBqdXN0IGxlYXZlIGN1cnJlbnQg YGNsYW1wKGIsIGUpYCBhbmQgYWxsb3cgYGNsYW1wKGIpYD8gQW5zd2VyOiBiZWNhdXNlIHdoZW4g eW91IHNlZSBgY2xhbXAoMTApYCwgaXMgaXQgYGNsYW1wKDEwLCBuaWwpYCwgb3IgYGNsYW1wKG5p bCwgMTApYCAoeWVzLCBsb2dpY2FsbHkgaXQgaXMgdGhlIGZpcnN0IGFyZ3VtZW50IHRoYXQgaXMg bGVmdCwgYnV0IGZyb20gcmVhZGFiaWxpdHkgcG9pbnQgb2YgdmlldyBpdCBpcyBub3QgdGhhdCBv YnZpb3VzKS4gUG9zc2libGUgYWx0ZXJuYXRpdmU6IGBjbGFtcChtaW46IDAsIG1heDogMTApYCwg d2hlcmUgeW91IGNhbiBvbWl0IGFueSBvZiB0d28uDQozLiBXaHkgZG8geW91IG5lZWQgb25lLXNp ZGVkIGNsYW1wIGF0IGFsbD8gQmVjYXVzZSBhbHRlcm5hdGl2ZXMgaXMgbXVjaCBtb3JlIHdvcmR5 LCBtYWtpbmcgcmVhZGVyIHRoaW5rOg0KDQpgYGBydWJ5DQojIHdpdGggY2xhbXANCmNoYWluLm9m LmNhbGN1bGF0aW9ucy5jbGFtcCgwLi4pDQoNCiMgd2l0aG91dCBjbGFtcA0KdiA9IGNoYWluLm9m LmNhbGN1bGF0aW9ucw0KdiA8IDAgPyAwIDogdg0KDQojIG9yLCB3aXRoIHlpZWxkX3NlbGYgKHJl bmFtZWQgdG8gdGhlbikNCmNoYWluLm9mLmNhbGN1bGF0aW9ucy50aGVuIHsgfHZ8IHYgPCAwID8g MCA6IHYgfQ0KYGBgDQoNCkJvdGggYWx0ZXJuYXRpdmVzICJ3aXRob3V0IGAjY2xhbXBgIiBzaG93 cyBpbnRlbnRpb25zIG11Y2ggbGVzcyBjbGVhci4NCg0KDQoNCi0tIA0KaHR0cHM6Ly9idWdzLnJ1 YnktbGFuZy5vcmcvDQoKVW5zdWJzY3JpYmU6IDxtYWlsdG86cnVieS1jb3JlLXJlcXVlc3RAcnVi eS1sYW5nLm9yZz9zdWJqZWN0PXVuc3Vic2NyaWJlPgo8aHR0cDovL2xpc3RzLnJ1YnktbGFuZy5v cmcvY2dpLWJpbi9tYWlsbWFuL29wdGlvbnMvcnVieS1jb3JlPgo=