Allways we have some ways to do somethings.
The question is: which is better, easier and understandable.
I think my proposal is better.


And these could certainly use some library sugar. How about this:

template isJustInputRange(R) {
enum bool isJustInputRange = isInputRange!R && !isForwardRange!R;
}

If we add for example isBufferedInputRange, we have to change isJustInputRange too. It's not a general solution.

Reply via email to