Macro tramp::rec_call[][src]

macro_rules! rec_call {
    ($call:expr) => { ... };
}

Turns a (probably recursive) tail call into a return value of type Rec. The variant created is Rec::Call. Given an expression x of type T, then rec_call!(x) has type Rec<T>. It is equivalent to, given a fictional attribute "optimize_tail_call", #[optimize_tail_call] return x transforming T into Rec<T>.