Use Arc
of adapter to execute queries.
#286
Merged
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.
Using
trustfall
in a web server was previously quite tricky because it required anRc<Adapter>
whereas servers tend to wrap everything insideArc
. The mismatch was even more striking since some of Trustfall's other input arguments were themselves wrapped inArc
.In principle, Trustfall doesn't need to know whether it's passed an
Rc
orArc
of the adapter. There's a way to do this with generics, but it's a bit complex and the overhead is not worth it right now. Instead, we make evaluating queries always use anArc
to get a large usability and ergonomics win at a tiny perf cost. We can relatively easily win back more than enough performance by optimizing other things. Stay tuned!