View source code
Display the source code in std/range/primitives.d from which this page was generated on
github.
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.
Page wiki
View or edit the community-maintained wiki page associated with this page.
Enum std.range.primitives.member isOutputRange
Returns true
if R
is an output range for elements of type
E
. An output range is defined functionally as a range that
supports the operation
as defined above.
put
(r, e)
Declaration
enum isOutputRange(R, E) = is(typeof((inout int = 0) { R r = R.init; E e = E.init; put(r, e); } ));
Example
void myprint(in char[] s) { } static assert(isOutputRange!(typeof(&myprint), char)); static assert(!isOutputRange!(char[], char)); static assert( isOutputRange!(dchar[], wchar)); static assert( isOutputRange!(dchar[], dchar));
Authors
Andrei Alexandrescu, David Simcha, and Jonathan M Davis. Credit for some of the ideas in building this module goes to Leonardo Maffi.