auto cycle(R)(R input) if (isInputRange!R)
Ditto
Cycle!R cycle(R)(R input, size_t index = 0) if (isRandomAccessRange!R && !isInfinite!R)
Cycle!R cycle(R)(ref R input, size_t index = 0) if (isStaticArray!R)