Skip to content
This repository has been archived by the owner on Oct 18, 2022. It is now read-only.

Investigate a Zero-Copy interface #10

Open
jonas-schievink opened this issue Oct 16, 2016 · 1 comment
Open

Investigate a Zero-Copy interface #10

jonas-schievink opened this issue Oct 16, 2016 · 1 comment

Comments

@jonas-schievink
Copy link
Owner

Currently, this crate forces the use of many allocations.

It should be possible to make Value use Cow internally, as well as making Request store an &'a [Value] for the arguments (note that the name of the called method is already a &'a str). This makes adding single arguments impossible, but that's not really a problem since the user can just use a Vec themselves.

One thing to note is that this will probably make Value a bit clunkier to use: Cow is hard to match on. Also, I've noticed that implementing this causes a cyclic trait dependency.

@jonas-schievink
Copy link
Owner Author

The 0copy branch tries to implement this but (as noted above) causes a compiler error that I don't know how to fix. The cause is probably rust-lang/rust#23714

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

1 participant