On Tuesday, 16 December 2014 at 16:56:20 UTC, Steven Schveighoffer wrote:
I can do PR for adding

https://github.com/nordlow/justd/blob/master/range_ex.d#L527

to Phobos.

Were should I put it/them?

I think to be clear, the PR I said I will pull is for the documentation update. A doc change has no effect on the code.

I will certainly review one that adds iteration of both key and value (as that is pretty much a free addition given the existing code), but it will have to go through normal review process.

Note, the range you have referenced would not be accepted as it requires an unnecessary AA lookup for the value, and it requires access to phobos (this should be added to druntime). Take a look at object.di and see how the byKey and byValue ranges work. It would be trivial to add a byPair range (don't really like that name). The large controversy is regarding how it returns the "front" element.

It would have to satisfy 3 requirements I think:

1. I should be able to do foreach(k, v; r) on it.
2. I should be able to access both key and value separately for each element.
3. It cannot depend on phobos.

-Steve

Got it.

Reply via email to