View source code Display the source code in std/range.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.

std.range.repeat - multiple declarations

Function repeat

Repeats one value forever.

Models an infinite bidirectional and random access range, with slicing.

Prototype

Repeat!T repeat(T)(
  T value
);

Example

import std.algorithm : equal;

assert(equal(5.repeat().take(4), [ 5, 5, 5, 5 ]));

Function repeat

Repeats value exactly n times. Equivalent to take(repeat(value), n).

Prototype

Take!(Repeat!T) repeat(T)(
  T value,
  size_t n
);

Example

import std.algorithm : equal;

assert(equal(5.repeat(4), 5.repeat().take(4)));

Struct Repeat

Repeats one value forever.

Models an infinite bidirectional and random access range, with slicing.

Example

import std.algorithm : equal;

assert(equal(5.repeat().take(4), [ 5, 5, 5, 5 ]));

Authors

Andrei Alexandrescu, David Simcha, and Jonathan M Davis. Credit for some of the ideas in building this module goes to Leonardo Maffi.

License

Boost License 1.0.

Comments