ref-extended-0.1.3 has been yanked.
Ref Extended
Extends lifetime of reference to same as lifetime of value by shortening entire program lifetime
When it is useful?
- You are doing programming without heap allocation (such as embed programming), and don't want to use static.
- You run some diverging functions which exit process itself without returning.
Example
let mut a = 2_i32; // The lifetime of value itself(not reference) is 'static
ref_extended!; // Extends lifetime of reference to lifetime of value ('static)
// This compiles
;
// Process abort if function containing this extended reference try to return or panic