[ruby-core:118974] [Ruby master Feature#20664] Add `before` and `until` options to Enumerator.produce
From:
"zverok (Victor Shepelev) via ruby-core" <ruby-core@...>
Date:
2024-08-28 11:36:56 UTC
List:
ruby-core #118974
SXNzdWUgIzIwNjY0IGhhcyBiZWVuIHVwZGF0ZWQgYnkgenZlcm9rIChWaWN0b3IgU2hlcGVsZXYp Lg0KDQoNCkFib3V0IGRvZXMvZG9lc27igJl0IGluY2x1ZGUgdGhlIGxhc3QgZWxlbWVudCwgdGhl cmUgaXMgYSByZWxhdGVkIGluY29uY2x1c2l2ZSBkaXNjdXNzaW9uOiAjMTgxMzYNCg0KQmFzaWNh bGx5LCBJIGJlbGlldmUgdGhhdCBib3RoIGB0YWtlX3doaWxlYC9gdGFrZV91bnRpbGAgbWlnaHQg aGF2ZSBwYWlycyBvZiB1c2UgY2FzZXM6DQpgYGBydWJ5DQojIHRoZSBsYXN0IGVsZW1lbnQgbm90 IG5lY2Vzc2FyeQ0Kc2VxdWVuY2UudGFrZV91bnRpbCgmOmJhZD8pDQojIHRoZSBsYXN0IGVsZW1l bnQgaXMgbmVjZXNzYXJ5OiB0aGluayBgLmAgaW4gYSBzZW50ZW5jZQ0Kc2VxdWVuY2UudGFrZV91 bnRpbCgmOnRlcm1pbmF0b3I/KQ0KDQojIHRoZSBsYXN0IGVsZW1lbnQgaXMgbm90IG5lY2Vzc2Fy eQ0Kc2VxdWVuY2UudGFrZV93aGlsZSgmOnN1aXRhYmxlPykNCiMgdGhlIGxhc3QgZWxlbWVudCBp cyBuZWNlc3Nhcnk6IHRoaW5rIHRoZSBsYXN0IHBhZ2Ugb24gcGFnaW5hdGlvbg0KIyAod2hpY2gg ZG9lc27igJl0IG1hdGNoIHRoZSBjb25kaXRpb24g4oCcaGF2ZSBtb3JlIHBhZ2Vz4oCdIGJ1dCBp cyBhIG1lYW5pbmdmdWwgZWxlbWVudCBpdHNlbGYpDQpzZXF1ZW5jZS50YWtlX3doaWxlKCY6bGFz dF9tYXRjaGluZ19lbGVtZW50PykNCmBgYA0KDQooV2UgaGF2ZSBhIGAjdGFrZV93aGlsZV9hZnRl cmAgaW4gb3VyIGBjb3JlX2V4dC5yYmAsIGFuZCB1c2UgaXQgcmVndWxhcmx5LikNCg0KVGhlIGBF bnVtZXJhYmxlI3NsaWNlX2FmdGVyYCBhbmQgYCNzbGljZV9iZWZvcmVgLCBmb3IgZXhhbXBsZSwg cmVjb2duaXplIHRoYXQgaXQgbWlnaHQgYmUgZWl0aGVyLCBidXQgbm90IGB0YWtlX3doaWxlYC4N Cg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KRmVhdHVyZSAjMjA2 NjQ6IEFkZCBgYmVmb3JlYCBhbmQgYHVudGlsYCBvcHRpb25zIHRvIEVudW1lcmF0b3IucHJvZHVj ZQ0KaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvaXNzdWVzLzIwNjY0I2NoYW5nZS0xMDk1NDcN Cg0KKiBBdXRob3I6IGtudSAoQWtpbm9yaSBNVVNIQSkNCiogU3RhdHVzOiBPcGVuDQotLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpFbnVtZXJhdG9yLnByb2R1Y2UgcHJv dmlkZXMgYSBuaWNlIHdheSB0byBnZW5lcmF0ZSBhbiBpbmZpbml0ZSBzZXF1ZW5jZSBidXQgaXMg YSBiaXQgYXdrd2FyZCB0byBkZWZpbmUgaG93IHRvIGVuZCBhIHNlcXVlbmNlLiAgSXQgbGFja3Mg YSBzaW1wbGUgYW5kIGVhc3kgd2F5IHRvIHByb2R1Y2UgdHlwaWNhbCBmaW5pdGUgc2VxdWVuY2Vz IGluIGFuIGludHVpdGl2ZSBzeW50YXguDQoNClRoaXMgcHJvcG9zYWwgYXR0ZW1wdHMgdG8gc29s dmUgdGhlIHByb2JsZW0gYnkgYWRkaW5nIHRoZXNlIHR3byBvcHRpb25zIHRvIHRoZSBtZXRob2Q6 DQoNCi0gYGJlZm9yZWA6IHdoZW4gcHJvdmlkZWQsIGl0IGlzIHVzZWQgYXMgYSBwcmVkaWNhdGUg dG8gZGV0ZXJtaW5lIGlmIGFuIGl0ZXJhdGlvbiBzaG91bGQgZW5kIGJlZm9yZSBhIGdlbmVyYXRl ZCB2YWx1ZSBnZXRzIHlpZWxkZWQuDQotIGB1bnRpbGA6IHdoZW4gcHJvdmlkZWQsIGl0IGlzIHVz ZWQgYXMgYSBwcmVkaWNhdGUgdG8gZGV0ZXJtaW5lIGlmIGFuIGl0ZXJhdGlvbiBzaG91bGQgZW5k IHVudGlsIGFmdGVyIGEgZ2VuZXJhdGVkIHZhbHVlIGdldHMgeWllbGRlZC4NCg0KQW55IHZhbHVl IHRoYXQgcmVzcG9uZHMgdG8gYHRvX3Byb2NgIGFuZCByZXR1cm5zIGEgYFByb2NgIG9iamVjdCBp cyBhY2NlcHRlZCBpbiB0aGVzZSBvcHRpb25zLg0KDQpBIHR5cGljYWwgdXNlIGNhc2UgZm9yIHRo ZSBgYmVmb3JlYCBvcHRpb24gaXMgdHJhdmVyc2luZyBhIHRyZWUgc3RydWN0dXJlIHRvIGl0ZXJh dGUgb3ZlciB0aGUgYW5jZXN0b3JzIG9yIGZvbGxvd2luZy9wcmVjZWRpbmcgc2libGluZ3Mgb2Yg YSBub2RlLg0KDQpUaGUgYHVudGlsYCBvcHRpb24gY2FuIGJlIHVzZWQgd2hlbiB0aGVyZSBpcyBh IGNsZWFyIGRlZmluaXRpb24gb2YgdGhlICJsYXN0IiB2YWx1ZSB0byB5aWVsZC4NCg0KYGBgcnVi eQ0KZW51bSA9IEVudW1lcmF0b3IucHJvZHVjZShGaWxlLCBiZWZvcmU6IDpuaWw/LCAmOnN1cGVy Y2xhc3MpDQplbnVtLnRvX2EgIz0+IFtGaWxlLCBJTywgT2JqZWN0LCBCYXNpY09iamVjdF0NCg0K ZW51bSA9IEVudW1lcmF0b3IucHJvZHVjZSgzLCB1bnRpbDogOnplcm8/LCAmOnByZWQpDQplbnVt X3RvX2EgIz0+IFszLCAyLCAxLCAwXQ0KYGBgDQoNCi0tLUZpbGVzLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0NCjAwMDEtQWRkLWJlZm9yZS1hbmQtdW50aWwtb3B0aW9ucy10by1FbnVt ZXJhdG9yLnByb2R1Y2UucGF0Y2ggKDEwLjcgS0IpDQoNCg0KLS0gDQpodHRwczovL2J1Z3MucnVi eS1sYW5nLm9yZy8NCiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCiBydWJ5LWNvcmUgbWFpbGluZyBsaXN0IC0tIHJ1YnktY29yZUBtbC5ydWJ5LWxhbmcub3Jn CiBUbyB1bnN1YnNjcmliZSBzZW5kIGFuIGVtYWlsIHRvIHJ1YnktY29yZS1sZWF2ZUBtbC5ydWJ5 LWxhbmcub3JnCiBydWJ5LWNvcmUgaW5mbyAtLSBodHRwczovL21sLnJ1YnktbGFuZy5vcmcvbWFp bG1hbjMvbGlzdHMvcnVieS1jb3JlLm1sLnJ1YnktbGFuZy5vcmcv