Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
|
|
@ -0,0 +1,6 @@
|
|||
import std.stdio, std.range;
|
||||
|
||||
void main () {
|
||||
foreach (a, b, c; zip("abc", "ABC", [1, 2, 3]))
|
||||
writeln(a, b, c);
|
||||
}
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
import std.stdio, std.range;
|
||||
|
||||
void main () {
|
||||
auto a1 = [1, 2];
|
||||
auto a2 = [1, 2, 3];
|
||||
alias StoppingPolicy sp;
|
||||
|
||||
// Stops when the shortest range is exhausted
|
||||
foreach (p; zip(sp.shortest, a1, a2))
|
||||
writeln(p.tupleof);
|
||||
writeln();
|
||||
|
||||
// Stops when the longest range is exhausted
|
||||
foreach (p; zip(sp.longest, a1, a2))
|
||||
writeln(p.tupleof);
|
||||
writeln();
|
||||
|
||||
// Requires that all ranges are equal
|
||||
foreach (p; zip(sp.requireSameLength, a1, a2))
|
||||
writeln(p.tupleof);
|
||||
}
|
||||
|
|
@ -0,0 +1,15 @@
|
|||
import std.stdio, std.range;
|
||||
|
||||
void main() {
|
||||
auto arr1 = [1, 2, 3, 4, 5];
|
||||
auto arr2 = [6, 7, 8, 9, 10];
|
||||
|
||||
foreach (ref a, ref b; lockstep(arr1, arr2))
|
||||
a += b;
|
||||
|
||||
assert(arr1 == [7, 9, 11, 13, 15]);
|
||||
|
||||
// Lockstep also supports iteration with an index variable
|
||||
foreach (index, a, b; lockstep(arr1, arr2))
|
||||
writefln("Index %s: a = %s, b = %s", index, a, b);
|
||||
}
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
import std.stdio, std.algorithm;
|
||||
|
||||
void main () {
|
||||
auto s1 = "abc";
|
||||
auto s2 = "ABC";
|
||||
auto a1 = [1, 2];
|
||||
|
||||
foreach (i; 0 .. min(s1.length, s2.length, a1.length))
|
||||
writeln(s1[i], s2[i], a1[i]);
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue