On Wednesday, 29 October 2014 at 18:04:30 UTC, John Colvin wrote:
On Wednesday, 29 October 2014 at 17:36:41 UTC, H. S. Teoh via
Digitalmars-d wrote:
On Wed, Oct 29, 2014 at 05:23:07PM +0000, Brad Anderson via
Digitalmars-d wrote:
On Wednesday, 29 October 2014 at 06:59:09 UTC, bearophile
wrote:
>This is very false. I have tons of cases where you only
>iterate on
>values or keys. On the other hand I have suggested several
>times that
>I'd like a byPairs (that yields keys-values tuple pairs).
>
It happens to me too but it's very much a minority of uses.
Having
sets as well as maps would help replace some of these cases.
Not all,
of course.
>
>>Doing byKey requires you to do a lookup to get the
>>corresponding
>>value which just takes up cycles unnecessarily.
>
>Usually people use a "AA.byKey.zip(AA.byValue)" that is not
>reliable.
Better than doing key lookups on every iteration but awfully
ugly and
should be unnecessary. byPairs sounds good.
I've submitted a PR for byPair before, but it was roadblocked
by the
fact that people demand that it return std.typecons.Tuple, yet
we're not
allowed to import Phobos in druntime. Other than this IMO
nitpicky
issue, the code was already all ready to go many moons ago.
T
Can byPair be implemented in phobos, or does it need to access
private/package stuff in druntime?
I don't see why not,It could be put into std.range and accept a
generic associative range(which includes the build-in associative
array).