View source code
Display the source code in std/range/package.d from which this
page was generated on github.
Report a bug
If you spot a problem with this page, click here to create a
Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page.
Requires a signed-in GitHub account. This works well for small changes.
If you'd like to make larger changes you may want to consider using
local clone.
std.range.takeNone
- multiple declarations
Function takeNone
Returns an empty range which is statically known to be empty and is
guaranteed to have length
and be random access regardless of R
's
capabilities.
auto takeNone(R)()
if (isInputRange!R);
Example
auto range = takeNone!(int[])();
writeln(range .length); // 0
assert(range .empty);
Function takeNone
Creates an empty range from the given range in Ο(1
). If it can, it
will return the same range type. If not, it will return
takeExactly(range, 0)
.
auto takeNone(R)
(
R range
)
if (isInputRange!R);
Example
import std .algorithm .iteration : filter;
assert(takeNone([42, 27, 19]) .empty);
assert(takeNone("dlang.org") .empty);
assert(takeNone(filter!"true"([42, 27, 19])) .empty);
Authors
Andrei Alexandrescu, David Simcha, Jonathan M Davis, and Jack Stouffer. Credit for some of the ideas in building this module goes to Leonardo Maffi.
License
Copyright © 1999-2022 by the D Language Foundation | Page generated by ddox.