[#110300] [Ruby master Bug#19057] Hide implementation of `rb_io_t`. — "ioquatix (Samuel Williams)" <noreply@...>
SXNzdWUgIzE5MDU3IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGlvcXVhdGl4IChTYW11ZWwgV2lsbGlh
53 messages
2022/10/15
[ruby-core:110409] [Ruby master Feature#19061] Proposal: make a concept of "consuming enumerator" explicit
From:
"Dan0042 (Daniel DeLorme)" <noreply@...>
Date:
2022-10-18 17:49:05 UTC
List:
ruby-core #110409
SXNzdWUgIzE5MDYxIGhhcyBiZWVuIHVwZGF0ZWQgYnkgRGFuMDA0MiAoRGFuaWVsIERlTG9ybWUp LgoKCm1hbWUgKFl1c3VrZSBFbmRvaCkgd3JvdGUgaW4gI25vdGUtMjoKPiBCdXQgaXQgaW50cm9k dWNlcyB5ZXQgYW5vdGhlciBuZXcgdHlwZSBvZiBFbnVtZXJhdG9yICh1bnJld2luZGFibGUgRW51 bWVyYXRvcj8pLCB3aGljaCBpcyB2ZXJ5IGNvbXBsaWNhdGVkLgoKSXQncyBtb3JlIGNvbXBsaWNh dGVkLCBidXQgdW5yZXdpbmRhYmxlIGVudW1lcmF0b3JzIGFscmVhZHkgZXhpc3QgaW4gcHJhY3Rp Y2UgKGFzIHNob3duIGJ5IEZJRk8pLCBzbyBtYWtpbmcgdGhlbSB2aXNpYmxlIGFuZCBleHBsaWNp dCBzaG91bGQgYmUgdXNlZnVsIEkgdGhpbmsuIE1heWJlIGAjY29uc3VtaW5nP2AgY291bGQgcmV0 dXJuIDMgdmFsdWVzIGxpa2UgYFtuaWwsIDpyZXdpbmRhYmxlLCA6bm9ucmV3aW5kYWJsZV1gCgot LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkZlYXR1cmUgIzE5MDYxOiBQ cm9wb3NhbDogbWFrZSBhIGNvbmNlcHQgb2YgImNvbnN1bWluZyBlbnVtZXJhdG9yIiBleHBsaWNp dApodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1ZXMvMTkwNjEjY2hhbmdlLTk5NzIxCgoq IEF1dGhvcjogenZlcm9rIChWaWN0b3IgU2hlcGVsZXYpCiogU3RhdHVzOiBPcGVuCiogUHJpb3Jp dHk6IE5vcm1hbAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCioqVGhl IHByb2JsZW0qKgoKTGV0J3MgaW1hZ2luZSB0aGlzIHN5bnRoZXRpYyBkYXRhOgpgYGBydWJ5Cmxp bmVzID0gWwogICItLUVNQUlMLS0iLAogICJGcm9tOiB6dmVyb2sub2ZmbGluZUBnbWFpbC5jb20i LAogICJUbzsgYnVnc0BydWJ5LWxhbmcub3JnIiwKICAiU3ViamVjdDogQ29uc3VtaW5nIEVudW1l cmF0b3JzIiwKICAiIiwKICAiSGVyZSwgSSBhbSBwcmVzZW50aW5nIHRoZSBmb2xsb3dpbmcgcHJv cG9zYWwuIiwKICAiTGV0J3MgdGFsayBhYm91dCBjb25zdW1pbmcgZW51bWVyYXRvcnMuLi4iCl0K YGBgClRoZSBsb2dpYyBvZiBwYXJzaW5nIGl0IGlzIG1vcmUgb3IgbGVzcyBjbGVhcjoKKiBza2lw IHRoZSBmaXJzdCBsaW5lCiogdGFrZSBsaW5lcyB1bnRpbCBtZWV0IGVtcHR5LCB0byByZWFkIHRo ZSBoZWFkZXIKKiB0YWtlIHRoZSByZXN0IG9mIHRoZSBsaW5lcyB0byByZWFkIHRoZSBib2R5CgpJ dCBjYW4gYmUgZWFzaWx5IHRyYW5zbGF0ZWQgaW50byBSdWJ5IGNvZGUsIGFsbW9zdCBsaXRlcmFs bHk6CmBgYHJ1YnkKZGVmIHBhcnNlKGVudW1lcmF0b3IpCiAgcHV0cyAiVGVzdGluZzogI3tlbnVt ZXJhdG9yLmluc3BlY3R9IgogIGVudW1lcmF0b3IubmV4dAogIHAgZW51bWVyYXRvci50YWtlX3do aWxlIHsgIV8xLmVtcHR5PyB9CiAgcCBlbnVtZXJhdG9yLnRvX2EKZW5kCmBgYAoKTm93LCBsZXQn cyB0cnkgdGhpcyBjb2RlIHdpdGggdHdvIGRpZmZlcmVudCBlbnVtZXJhdG9ycyBvbiB0aG9zZSBs aW5lczoKYGBgcnVieQpyZXF1aXJlICdzdHJpbmdpbycKCmVudW1lcmF0b3IxID0gbGluZXMuZWFj aAplbnVtZXJhdG9yMiA9IFN0cmluZ0lPLm5ldyhsaW5lcy5qb2luKCJcbiIpKS5lYWNoX2xpbmUo Y2hvbXA6IHRydWUpCgpwdXRzICJBcnJheSNlYWNoIgpwYXJzZShlbnVtZXJhdG9yMSkKCnB1dHMK cHV0cyAiU3RyaW5nSU8jZWFjaF9saW5lIgpwYXJzZShlbnVtZXJhdG9yMikKYGBgCk91dHB1dCAo YXMgeW91IHByb2JhYmx5IGFscmVhZHkgZ3Vlc3NlZCk6CmBgYApBcnJheSNlYWNoClRlc3Rpbmc6 ICM8RW51bWVyYXRvcjogWy4uLl06ZWFjaD4KWyItLUVNQUlMLS0iLCAiRnJvbTogenZlcm9rLm9m ZmxpbmVAZ21haWwuY29tIiwgIlRvOyBidWdzQHJ1YnktbGFuZy5vcmciLCAiU3ViamVjdDogQ29u c3VtaW5nIEVudW1lcmF0b3JzIl0KWyItLUVNQUlMLS0iLCAiRnJvbTogenZlcm9rLm9mZmxpbmVA Z21haWwuY29tIiwgIlRvOyBidWdzQHJ1YnktbGFuZy5vcmciLCAiU3ViamVjdDogQ29uc3VtaW5n IEVudW1lcmF0b3JzIiwgIiIsICJIZXJlLCBJIGFtIHByZXNlbnRpbmcgdGhlIGZvbGxvd2luZyBw cm9wb3NhbC4iLCAiTGV0J3MgdGFsayBhYm91dCBjb25zdW1pbmcgZW51bWVyYXRvcnMuLi4iXQoK U3RyaW5nSU8jZWFjaF9saW5lClRlc3Rpbmc6ICM8RW51bWVyYXRvcjogIzxTdHJpbmdJTzoweDAw MDA1NTgxMDE4YzUwYTA+OmVhY2hfbGluZShjaG9tcDogdHJ1ZSk+ClsiRnJvbTogenZlcm9rLm9m ZmxpbmVAZ21haWwuY29tIiwgIlRvOyBidWdzQHJ1YnktbGFuZy5vcmciLCAiU3ViamVjdDogQ29u c3VtaW5nIEVudW1lcmF0b3JzIl0KWyJIZXJlLCBJIGFtIHByZXNlbnRpbmcgdGhlIGZvbGxvd2lu ZyBwcm9wb3NhbC4iLCAiTGV0J3MgdGFsayBhYm91dCBjb25zdW1pbmcgZW51bWVyYXRvcnMuLi4i XQpgYGAKCk9ubHkgdGhlIHNlY29uZCBlbnVtZXJhdG9yIGJlaGF2ZXMgdGhlIHdheSB3ZSB3YW50 ZWQgaXQgdG8uClRoaW5ncyB0byBub3RpY2UgaGVyZToKMS4gQm90aCBlbnVtZXJhdG9ycyBhcmUg b2YgdGhlIHNhbWUgY2xhc3MsICJqdXN0IGVudW1lcmF0b3IsIiBidXQgdGhleSBiZWhhdmUgZGlm ZmVyZW50bHk6IG9uZSBvZiB0aGVtIGlzICoqY29uc3VtaW5nKiogZGF0YSBvbiBlYWNoIGl0ZXJh dGlvbiBtZXRob2QsIHRoZSBvdGhlciBkb2VzIG5vdDsgYnV0IHRoZXJlIGlzIG5vIHByb2dyYW1t YXRpYyB3YXkgdG8gdGVsbCB3aGV0aGVyIHNvbWUgZW51bWVyYXRvciBpbnN0YW5jZSBpcyBjb25z dW1pbmcKMi4gVGhlcmUgaXMgbm8gZWFzeSB3YXkgdG8gKiptYWtlIGEgbm9uLWNvbnN1bWluZyBl bnVtZXJhdG9yIGJlaGF2ZSBpbiBhIGNvbnN1bWluZyB3YXkqKiwgdG8gb3BlbiBhIHBvc3NpYmls aXR5IG9mIGEgc2VxdWVuY2Ugb2YgcHJvY2Vzc2luZyAic2tpcCB0aGlzLCB0YWtlIHRoYXQsIHRh a2UgdGhlIHJlc3QiCgoqKkNvbmNyZXRlIHByb3Bvc2FsKioKCjEuIEludHJvZHVjZSBhbiBgRW51 bWVyYXRvciNjb25zdW1pbmc/YCBtZXRob2QgdGhhdCB3aWxsIGFsbG93IHRlbGxpbmcgb25lIG9m IHRoZSBvdGhlciAoYW5kIG1ha2UgY29yZSBlbnVtZXJhdG9ycyBsaWtlIGAjZWFjaF9saW5lYCBw cm9wZXJseSByZXBvcnQgdGhleSBhcmUgY29uc3VtaW5nKS4KMi4gSW50cm9kdWNlIGBjb25zdW1p bmc6IHRydWVgIHBhcmFtZXRlciBmb3IgYEVudW1lcmF0b3IubmV3YCBzbyBpdCB3b3VsZCBiZSBl YXN5IGZvciB1c2VyJ3MgY29kZSB0byBzcGVjaWZ5IHRoZSBmbGFnCjMuIEludHJvZHVjZSBgRW51 bWVyYXRvciNjb25zdW1pbmdgIG1ldGhvZCB0byBwcm9kdWNlIGEgY29uc3VtaW5nIGVudW1lcmF0 b3IgZnJvbSBhIG5vbi1jb25zdW1pbmcgb25lOgpgYGBydWJ5CiMgcmVmZXJlbmNlIGltcGxlbWVu dGF0aW9uIGlzIHRyaXZpYWw6CmNsYXNzIEVudW1lcmF0b3IKICBkZWYgY29uc3VtaW5nCiAgICBz b3VyY2UgPSBzZWxmCiAgICBFbnVtZXJhdG9yLm5ldyB7IHx5fCBsb29wIHsgeSA8PCBzb3VyY2Uu bmV4dCB9IH0KICBlbmQKZW5kCgplbnVtZXJhdG9yMyA9IGxpbmVzLmVhY2guY29uc3VtaW5nCnBh cnNlKGVudW1lcmF0b3IzKQpgYGAKT3V0cHV0OgpgYGAKWyJGcm9tOiB6dmVyb2sub2ZmbGluZUBn bWFpbC5jb20iLCAiVG87IGJ1Z3NAcnVieS1sYW5nLm9yZyIsICJTdWJqZWN0OiBDb25zdW1pbmcg RW51bWVyYXRvcnMiXQpbIkhlcmUsIEkgYW0gcHJlc2VudGluZyB0aGUgZm9sbG93aW5nIHByb3Bv c2FsLiIsICJMZXQncyB0YWxrIGFib3V0IGNvbnN1bWluZyBlbnVtZXJhdG9ycy4uLiJdCmBgYAoK CgotLSAKaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvCgpVbnN1YnNjcmliZTogPG1haWx0bzpy dWJ5LWNvcmUtcmVxdWVzdEBydWJ5LWxhbmcub3JnP3N1YmplY3Q9dW5zdWJzY3JpYmU+CjxodHRw Oi8vbGlzdHMucnVieS1sYW5nLm9yZy9jZ2ktYmluL21haWxtYW4vb3B0aW9ucy9ydWJ5LWNvcmU+ Cg==