Macro crunchy::unroll[][src]

macro_rules! unroll {
    (for $v : ident in 0 .. 0 $c : block) => { ... };
    (for $v : ident < $max : tt in($start : tt .. $end : tt).step_by($val : expr)
 { $($c : tt) * }) => { ... };
    (for $v : ident in($start : tt .. $end : tt).step_by($val : expr)
 { $($c : tt) * }) => { ... };
    (for $v : ident in($start : tt .. $end : tt) { $($c : tt) * }) => { ... };
    (for $v : ident in $start : tt .. $end : tt { $($c : tt) * }) => { ... };
    (for $v : ident < $max : tt in $start : tt .. $end : tt $c : block) => { ... };
    (for $v : ident in 0 .. $end : tt { $($statement : tt) * }) => { ... };
    (@ $v : ident, $a : expr, 0, $c : block) => { ... };
    (@ $v : ident, $a : expr, 1, $c : block) => { ... };
    (@ $v : ident, $a : expr, 2, $c : block) => { ... };
    (@ $v : ident, $a : expr, 3, $c : block) => { ... };
    (@ $v : ident, $a : expr, 4, $c : block) => { ... };
    (@ $v : ident, $a : expr, 5, $c : block) => { ... };
    (@ $v : ident, $a : expr, 6, $c : block) => { ... };
    (@ $v : ident, $a : expr, 7, $c : block) => { ... };
    (@ $v : ident, $a : expr, 8, $c : block) => { ... };
    (@ $v : ident, $a : expr, 9, $c : block) => { ... };
    (@ $v : ident, $a : expr, 10, $c : block) => { ... };
    (@ $v : ident, $a : expr, 11, $c : block) => { ... };
    (@ $v : ident, $a : expr, 12, $c : block) => { ... };
    (@ $v : ident, $a : expr, 13, $c : block) => { ... };
    (@ $v : ident, $a : expr, 14, $c : block) => { ... };
    (@ $v : ident, $a : expr, 15, $c : block) => { ... };
    (@ $v : ident, $a : expr, 16, $c : block) => { ... };
    (@ $v : ident, $a : expr, 17, $c : block) => { ... };
    (@ $v : ident, $a : expr, 18, $c : block) => { ... };
    (@ $v : ident, $a : expr, 19, $c : block) => { ... };
    (@ $v : ident, $a : expr, 20, $c : block) => { ... };
    (@ $v : ident, $a : expr, 21, $c : block) => { ... };
    (@ $v : ident, $a : expr, 22, $c : block) => { ... };
    (@ $v : ident, $a : expr, 23, $c : block) => { ... };
    (@ $v : ident, $a : expr, 24, $c : block) => { ... };
    (@ $v : ident, $a : expr, 25, $c : block) => { ... };
    (@ $v : ident, $a : expr, 26, $c : block) => { ... };
    (@ $v : ident, $a : expr, 27, $c : block) => { ... };
    (@ $v : ident, $a : expr, 28, $c : block) => { ... };
    (@ $v : ident, $a : expr, 29, $c : block) => { ... };
    (@ $v : ident, $a : expr, 30, $c : block) => { ... };
    (@ $v : ident, $a : expr, 31, $c : block) => { ... };
    (@ $v : ident, $a : expr, 32, $c : block) => { ... };
    (@ $v : ident, $a : expr, 33, $c : block) => { ... };
    (@ $v : ident, $a : expr, 34, $c : block) => { ... };
    (@ $v : ident, $a : expr, 35, $c : block) => { ... };
    (@ $v : ident, $a : expr, 36, $c : block) => { ... };
    (@ $v : ident, $a : expr, 37, $c : block) => { ... };
    (@ $v : ident, $a : expr, 38, $c : block) => { ... };
    (@ $v : ident, $a : expr, 39, $c : block) => { ... };
    (@ $v : ident, $a : expr, 40, $c : block) => { ... };
    (@ $v : ident, $a : expr, 41, $c : block) => { ... };
    (@ $v : ident, $a : expr, 42, $c : block) => { ... };
    (@ $v : ident, $a : expr, 43, $c : block) => { ... };
    (@ $v : ident, $a : expr, 44, $c : block) => { ... };
    (@ $v : ident, $a : expr, 45, $c : block) => { ... };
    (@ $v : ident, $a : expr, 46, $c : block) => { ... };
    (@ $v : ident, $a : expr, 47, $c : block) => { ... };
    (@ $v : ident, $a : expr, 48, $c : block) => { ... };
    (@ $v : ident, $a : expr, 49, $c : block) => { ... };
    (@ $v : ident, $a : expr, 50, $c : block) => { ... };
    (@ $v : ident, $a : expr, 51, $c : block) => { ... };
    (@ $v : ident, $a : expr, 52, $c : block) => { ... };
    (@ $v : ident, $a : expr, 53, $c : block) => { ... };
    (@ $v : ident, $a : expr, 54, $c : block) => { ... };
    (@ $v : ident, $a : expr, 55, $c : block) => { ... };
    (@ $v : ident, $a : expr, 56, $c : block) => { ... };
    (@ $v : ident, $a : expr, 57, $c : block) => { ... };
    (@ $v : ident, $a : expr, 58, $c : block) => { ... };
    (@ $v : ident, $a : expr, 59, $c : block) => { ... };
    (@ $v : ident, $a : expr, 60, $c : block) => { ... };
    (@ $v : ident, $a : expr, 61, $c : block) => { ... };
    (@ $v : ident, $a : expr, 62, $c : block) => { ... };
    (@ $v : ident, $a : expr, 63, $c : block) => { ... };
    (@ $v : ident, $a : expr, 64, $c : block) => { ... };
    (@ $v : ident, $a : expr, 65, $c : block) => { ... };
    (@ $v : ident, $a : expr, 66, $c : block) => { ... };
    (@ $v : ident, $a : expr, 67, $c : block) => { ... };
    (@ $v : ident, $a : expr, 68, $c : block) => { ... };
    (@ $v : ident, $a : expr, 69, $c : block) => { ... };
    (@ $v : ident, $a : expr, 70, $c : block) => { ... };
    (@ $v : ident, $a : expr, 71, $c : block) => { ... };
    (@ $v : ident, $a : expr, 72, $c : block) => { ... };
    (@ $v : ident, $a : expr, 73, $c : block) => { ... };
    (@ $v : ident, $a : expr, 74, $c : block) => { ... };
    (@ $v : ident, $a : expr, 75, $c : block) => { ... };
    (@ $v : ident, $a : expr, 76, $c : block) => { ... };
    (@ $v : ident, $a : expr, 77, $c : block) => { ... };
    (@ $v : ident, $a : expr, 78, $c : block) => { ... };
    (@ $v : ident, $a : expr, 79, $c : block) => { ... };
    (@ $v : ident, $a : expr, 80, $c : block) => { ... };
    (@ $v : ident, $a : expr, 81, $c : block) => { ... };
    (@ $v : ident, $a : expr, 82, $c : block) => { ... };
    (@ $v : ident, $a : expr, 83, $c : block) => { ... };
    (@ $v : ident, $a : expr, 84, $c : block) => { ... };
    (@ $v : ident, $a : expr, 85, $c : block) => { ... };
    (@ $v : ident, $a : expr, 86, $c : block) => { ... };
    (@ $v : ident, $a : expr, 87, $c : block) => { ... };
    (@ $v : ident, $a : expr, 88, $c : block) => { ... };
    (@ $v : ident, $a : expr, 89, $c : block) => { ... };
    (@ $v : ident, $a : expr, 90, $c : block) => { ... };
    (@ $v : ident, $a : expr, 91, $c : block) => { ... };
    (@ $v : ident, $a : expr, 92, $c : block) => { ... };
    (@ $v : ident, $a : expr, 93, $c : block) => { ... };
    (@ $v : ident, $a : expr, 94, $c : block) => { ... };
    (@ $v : ident, $a : expr, 95, $c : block) => { ... };
    (@ $v : ident, $a : expr, 96, $c : block) => { ... };
    (@ $v : ident, $a : expr, 97, $c : block) => { ... };
    (@ $v : ident, $a : expr, 98, $c : block) => { ... };
    (@ $v : ident, $a : expr, 99, $c : block) => { ... };
    (@ $v : ident, $a : expr, 100, $c : block) => { ... };
    (@ $v : ident, $a : expr, 101, $c : block) => { ... };
    (@ $v : ident, $a : expr, 102, $c : block) => { ... };
    (@ $v : ident, $a : expr, 103, $c : block) => { ... };
    (@ $v : ident, $a : expr, 104, $c : block) => { ... };
    (@ $v : ident, $a : expr, 105, $c : block) => { ... };
    (@ $v : ident, $a : expr, 106, $c : block) => { ... };
    (@ $v : ident, $a : expr, 107, $c : block) => { ... };
    (@ $v : ident, $a : expr, 108, $c : block) => { ... };
    (@ $v : ident, $a : expr, 109, $c : block) => { ... };
    (@ $v : ident, $a : expr, 110, $c : block) => { ... };
    (@ $v : ident, $a : expr, 111, $c : block) => { ... };
    (@ $v : ident, $a : expr, 112, $c : block) => { ... };
    (@ $v : ident, $a : expr, 113, $c : block) => { ... };
    (@ $v : ident, $a : expr, 114, $c : block) => { ... };
    (@ $v : ident, $a : expr, 115, $c : block) => { ... };
    (@ $v : ident, $a : expr, 116, $c : block) => { ... };
    (@ $v : ident, $a : expr, 117, $c : block) => { ... };
    (@ $v : ident, $a : expr, 118, $c : block) => { ... };
    (@ $v : ident, $a : expr, 119, $c : block) => { ... };
    (@ $v : ident, $a : expr, 120, $c : block) => { ... };
    (@ $v : ident, $a : expr, 121, $c : block) => { ... };
    (@ $v : ident, $a : expr, 122, $c : block) => { ... };
    (@ $v : ident, $a : expr, 123, $c : block) => { ... };
    (@ $v : ident, $a : expr, 124, $c : block) => { ... };
    (@ $v : ident, $a : expr, 125, $c : block) => { ... };
    (@ $v : ident, $a : expr, 126, $c : block) => { ... };
    (@ $v : ident, $a : expr, 127, $c : block) => { ... };
    (@ $v : ident, $a : expr, 128, $c : block) => { ... };
}
Expand description

Unroll the given for loop

Example:

unroll! {
  for i in 0..5 {
    println!("Iteration {}", i);
  }
}

will expand into:

{ println!("Iteration {}", 0); }
{ println!("Iteration {}", 1); }
{ println!("Iteration {}", 2); }
{ println!("Iteration {}", 3); }
{ println!("Iteration {}", 4); }