--- Comment #1 from 2012-09-29 15:55:11 PDT ---
(In reply to comment #0)
> Here, the implementer of "foo" is unable to tranform his keys, because their
> types are not mutable.

I meant "to"

> The real problem is that KeyType returned "const(int)[int]", is not really
> const, but not mutable either. Because of this Unqual doesn't work.
> Suggestion: The type returned by KeyType should be "full const", eg:
> const(int[int]).

No, wait that is bad advice. Recommend changing "Unqual" actually;

template Unqual(T)
    if(!isAssociativeArray!T) //New condition
    //As it was

//New overload
template Unqual(T)
    alias KeyType!T K;
    alias Unqual!(ValueType!T) V;
    alias V[K] Unqual;

I'll do this tommorrow, unless I get some objections?

Configure issuemail:
------- You are receiving this mail because: -------

Reply via email to