let mut counter = init + 1;
move || { counter -= 1; counter }

これが普通だと思うのは俺だけか?