On Wednesday, 7 February 2018 at 01:10:34 UTC, Fra Mecca wrote:
I don't know if this post belongs to the learn section, but
I'll try anyway.
I am using the std.path.pathSplitter function that returns a
PathSplitter function exposing ranges primitive.
I have some question that could be generalized to other structs
that expose range primitives.
1. Why can't I write foreach(i, el;
pathSplitter("foor/bar").enumerate) ?
2. Supposing I want to fix this problem, what do I add to the
struct? opApply?
There was a stupid stupid error on my part because I wasn't
import the range module.
3. Why doesn't ranges infer the iteration method at compile
time so that I don't need to write enumerate?
This question is still valid.
I think it would be saner to write
foreach(idx, el; paths)
instead of
foreach(idx, el; paths.enumerate)