-
Notifications
You must be signed in to change notification settings - Fork 217
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
R1CS: Closure of challenge phase is Fn
.
#244
Comments
Thanks for opening this issue and explaining the context behind |
Since we have to use nightly for other reasons (non-lexical lifetimes in IPP |
That sounds good to me! As long as we remember to remove |
+1 to all of the above. One thing we could do is to make the |
Seems like NLL is stable since 1.31: https://blog.rust-lang.org/2018/12/06/Rust-1.31-and-rust-2018.html#non-lexical-lifetimes |
It allows for the challenge phase to accept closures that take some more context, e.g. moving non-Clone values in the challenge closure. This works in stable since Rust 1.35; cfr. rust-lang/rust#28796. This closes issue dalek-cryptography#244.
It allows for the challenge phase to accept closures that take some more context, e.g. moving non-Clone values in the challenge closure. This works in stable since Rust 1.35; cfr. rust-lang/rust#28796. This closes issue dalek-cryptography#244.
It allows for the challenge phase to accept closures that take some more context, e.g. moving non-Clone values in the challenge closure. This works in stable since Rust 1.35; cfr. rust-lang/rust#28796. This closes issue dalek-cryptography#244.
It allows for the challenge phase to accept closures that take some more context, e.g. moving non-Clone values in the challenge closure. This works in stable since Rust 1.35; cfr. rust-lang/rust#28796. This closes issue dalek-cryptography#244.
It allows for the challenge phase to accept closures that take some more context, e.g. moving non-Clone values in the challenge closure. This works in stable since Rust 1.35; cfr. rust-lang/rust#28796. This closes issue #244.
Closed through #276 |
Since #222, one writes the challenge phase using a closure. This closure gets stored in a
Vec<Box<Fn(...)>>
, and then gets called once at the start of the second phase.Ideally, this closure should be
FnOnce
, such that it's able to consume some of its context (e.g. a set of variables could be consumed instead of borrowed).Note that it is currently impossible to call a
Box<FnOnce>
, because it would call a method with unsized self. Cfr. rust-lang/rust#28796Nightly does support
FnBox()
, which is a temporary workaround. The above issue is discussion deprecation ofFnBox()
in favour of theunsized_locals
feature (which makesBox<FnOnce>
callable).Note that there does not seem to be a fix for stable Rust, but I thought this should be noted somewhere. I'm not sure whether you are in favour of keeping this issue open while waiting for
unsized_locals
stabilization.The text was updated successfully, but these errors were encountered: