Closed phi-gamma closed 9 years ago
Niko has a large writeup on this change, Purging proc. Roughly summarized, functions will need to be defined with FnOnce
parameters, and calls will need to change to move ||
. But it doesn't look like a simple swap.
I've started fixing that but got stuck at some point. If anyone's interested, the WIP patch is at the remove-proc branch in my fork.
This turns out to be more complicated than I expected. Especially because the closure should be FnOnce+Send, since the implementation of a filesystem should be able to pass the reply object to a different task (for asynchronous processing).
I finally managed to update the code to unboxed closures. It turned out to be more complicated than expected, because you can't easily store a closure that takes by reference parameters without getting problems with lifetime checks. Many thanks to @steveklabnik and @Kimundi for helping me on IRC and pointing me to the new (undocumented and somewhat strange) syntax for<'a>
:)
···<date: 2014-12-24, Wednesday>···
Closed #31.
Thanks for fixing! The resolution turned out to be pretty enlightening.
As of
rustc
version “rustc 0.13.0-nightly (42deaa5e4 2014-12-16 17:51:23 +0000)” the library fails to compile. The cause appears to be the removal ofproc()
: