Merge pull request #4004 from quickfur/cache-ddoc

[doc only] Improve ddoc for std.algorithm.iteration.cache
This commit is contained in:
Robert Schadek 2016-02-25 12:46:09 +01:00
commit 5e5a8010ef

View file

@ -197,14 +197,14 @@ if (isBidirectionalRange!Range)
/++ /++
Tip: $(D cache) is eager when evaluating elements. If calling front on the Tip: $(D cache) is eager when evaluating elements. If calling front on the
underlying range has a side effect, it will be observeable before calling underlying _range has a side effect, it will be observeable before calling
front on the actual cached range. front on the actual cached _range.
Furtermore, care should be taken composing $(D cache) with $(XREF _range,take). Furthermore, care should be taken composing $(D cache) with $(XREF _range,take).
By placing $(D take) before $(D cache), then $(D cache) will be "aware" By placing $(D take) before $(D cache), then $(D cache) will be "aware"
of when the range ends, and correctly stop caching elements when needed. of when the _range ends, and correctly stop caching elements when needed.
If calling front has no side effect though, placing $(D take) after $(D cache) If calling front has no side effect though, placing $(D take) after $(D cache)
may yield a faster range. may yield a faster _range.
Either way, the resulting ranges will be equivalent, but maybe not at the Either way, the resulting ranges will be equivalent, but maybe not at the
same cost or side effects. same cost or side effects.