add usage of scoped futures to transactions: ownership of this change transferred to @weiznich #38
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Hi there! I've been building on top of the
diesel-async
library for some time and have wanted to be able to use references in the closures I pass toAsyncConnection
's transaction method. I wrote up a small crate that encapsulates the behavior needed to support references in the closure, basically it imposes an upper bound on the higher-ranked lifetime that's implicit in the FnOnce trait bound so that it doesn't imply a'static
bound.Main downside of merging this would be pushing a new function
scope_boxed
onto code callingtransaction
, however,Box::pinned
still works with the proposed changes.Here is an example showing how the updated
transaction
signature allows callback closures to capture references.